.gitignore | 71 +-
- Freeswitch.2008.sln | 5902 +++++++--------
- Freeswitch.2010.sln | 7876 ++++++++++----------
+ Freeswitch.2008.sln | 142 +-
+ Freeswitch.2010.sln | 202 +-
configure.in | 33 +-
libs/.gitignore | 8 +-
- .../win32/apr-util/libaprutil.2010.vcxproj.filters | 609 +-
+ .../win32/apr-util/libaprutil.2010.vcxproj.filters | 7 +-
+ libs/win32/xmlrpc-c/abyss.2008.vcproj | 410 +++
+ libs/win32/xmlrpc-c/abyss.2010.vcxproj | 197 ++
+ libs/win32/xmlrpc-c/abyss.2010.vcxproj.filters | 69 +
+ libs/win32/xmlrpc-c/gennmtab.2008.vcproj | 404 +++
+ libs/win32/xmlrpc-c/gennmtab.2010.vcxproj | 304 ++
+ libs/win32/xmlrpc-c/xmlparse.2008.vcproj | 394 +++
+ libs/win32/xmlrpc-c/xmlparse.2010.vcxproj | 254 ++
+ libs/win32/xmlrpc-c/xmlrpc.2008.vcproj | 490 ++++
+ libs/win32/xmlrpc-c/xmlrpc.2010.vcxproj | 240 ++
+ libs/win32/xmlrpc-c/xmlrpc.2010.vcxproj.filters | 125 +
+ libs/win32/xmlrpc-c/xmltok.2008.vcproj | 378 +++
+ libs/win32/xmlrpc-c/xmltok.2010.vcxproj | 199 ++
+ libs/win32/xmlrpc-c/xmltok.2010.vcxproj.filters | 45 +
libs/xmlrpc-c/.cvsignore | 18 -
libs/xmlrpc-c/.update | 1 -
libs/xmlrpc-c/GNUmakefile | 53 +-
- libs/xmlrpc-c/Makefile.common | 272 -
+ libs/xmlrpc-c/Makefile.common | 272 --
libs/xmlrpc-c/Makefile.config.in | 79 -
libs/xmlrpc-c/Makefile.srcdir.in | 1 -
libs/xmlrpc-c/Makefile.version | 11 -
libs/xmlrpc-c/Windows/CleanWin32.bat | 73 +-
- libs/xmlrpc-c/Windows/ReadMeWin32.txt | 130 +-
- libs/xmlrpc-c/Windows/abyss.2008.vcproj | 1298 ----
- libs/xmlrpc-c/Windows/abyss.2010.vcxproj | 437 --
+ libs/xmlrpc-c/Windows/ReadMeWin32.txt | 12 +-
+ libs/xmlrpc-c/Windows/abyss.2008.vcproj | 1298 ---------
+ libs/xmlrpc-c/Windows/abyss.2010.vcxproj | 437 ---
libs/xmlrpc-c/Windows/abyss.2010.vcxproj.filters | 131 -
- libs/xmlrpc-c/Windows/cpptest.dsp | 249 +-
- libs/xmlrpc-c/Windows/gennmtab.2008.vcproj | 242 -
- libs/xmlrpc-c/Windows/mkvers.bat | 106 +-
+ libs/xmlrpc-c/Windows/cpptest.dsp | 9 +-
+ libs/xmlrpc-c/Windows/curllink.h | 36 +-
+ libs/xmlrpc-c/Windows/dll/cpptest.vcproj | 482 +++
+ libs/xmlrpc-c/Windows/dll/gennmtab.vcproj | 449 +++
+ libs/xmlrpc-c/Windows/dll/rpctest.vcproj | 574 ++++
+ .../Windows/dll/sample_add_asynch_client.vcproj | 443 +++
+ libs/xmlrpc-c/Windows/dll/sample_add_server.vcproj | 433 +++
+ .../dll/sample_add_server_w32httpsys.vcproj | 433 +++
+ .../Windows/dll/sample_add_sync_client.vcproj | 435 +++
+ .../xmlrpc-c/Windows/dll/sample_auth_client.vcproj | 435 +++
+ .../Windows/dll/tool_xmlrpc-transport.vcproj | 430 +++
+ libs/xmlrpc-c/Windows/dll/tool_xmlrpc.vcproj | 430 +++
+ libs/xmlrpc-c/Windows/dll/xmlrpc.sln | 327 +++
+ libs/xmlrpc-c/Windows/dll/xmlrpc.vcproj | 479 +++
+ libs/xmlrpc-c/Windows/dll/xmlrpc__.vcproj | 1296 +++++++++
+ libs/xmlrpc-c/Windows/dll/xmlrpc_abyss.vcproj | 1342 +++++++++
+ libs/xmlrpc-c/Windows/dll/xmlrpc_client.vcproj | 425 +++
+ libs/xmlrpc-c/Windows/dll/xmlrpc_server.vcproj | 413 +++
+ .../Windows/dll/xmlrpc_server_abyss.vcproj | 401 +++
+ libs/xmlrpc-c/Windows/dll/xmlrpc_server_cgi.vcproj | 401 +++
+ .../Windows/dll/xmlrpc_server_w32httpsys.vcproj | 405 +++
+ libs/xmlrpc-c/Windows/dll/xmlrpc_util.vcproj | 449 +++
+ libs/xmlrpc-c/Windows/dll/xmlrpc_xmlparse.vcproj | 417 +++
+ libs/xmlrpc-c/Windows/dll/xmlrpc_xmltok.vcproj | 483 +++
+ libs/xmlrpc-c/Windows/gennmtab.2008.vcproj | 242 --
+ libs/xmlrpc-c/Windows/mkvers.bat | 8 +-
libs/xmlrpc-c/Windows/query_meerkat.dsp | 100 -
- libs/xmlrpc-c/Windows/rpctest.dsp | 428 +-
+ libs/xmlrpc-c/Windows/rpctest.dsp | 8 +
+ libs/xmlrpc-c/Windows/socketpair.cpp | 71 +
libs/xmlrpc-c/Windows/transport_config.h | 13 -
- libs/xmlrpc-c/Windows/win32_config.h | 80 +-
- libs/xmlrpc-c/Windows/xmlparse.2008.vcproj | 387 -
- libs/xmlrpc-c/Windows/xmlparse.2010.vcxproj | 198 -
+ libs/xmlrpc-c/Windows/transport_config_win32.h | 26 +-
+ libs/xmlrpc-c/Windows/win32_config.h | 4 +
+ libs/xmlrpc-c/Windows/xmlparse.2008.vcproj | 387 ---
+ libs/xmlrpc-c/Windows/xmlparse.2010.vcxproj | 198 --
libs/xmlrpc-c/Windows/xmlrpc-c/config.h | 38 -
- libs/xmlrpc-c/Windows/xmlrpc.2008.vcproj | 2042 -----
- libs/xmlrpc-c/Windows/xmlrpc.2010.vcxproj | 620 --
- libs/xmlrpc-c/Windows/xmlrpc.2010.vcxproj.filters | 287 -
- libs/xmlrpc-c/Windows/xmlrpc.dsp | 950 +--
- libs/xmlrpc-c/Windows/xmlrpc.dsw | 514 +-
+ libs/xmlrpc-c/Windows/xmlrpc.2008.vcproj | 2042 -------------
+ libs/xmlrpc-c/Windows/xmlrpc.2010.vcxproj | 620 ----
+ libs/xmlrpc-c/Windows/xmlrpc.2010.vcxproj.filters | 287 --
+ libs/xmlrpc-c/Windows/xmlrpc.dsp | 12 +
+ libs/xmlrpc-c/Windows/xmlrpc.dsw | 30 +
libs/xmlrpc-c/Windows/xmlrpc_config.h | 158 -
libs/xmlrpc-c/Windows/xmlrpc_win32_config.h | 69 +-
- libs/xmlrpc-c/Windows/xmlrpccpp.dsp | 361 +-
- libs/xmlrpc-c/Windows/xmltok.2008.vcproj | 455 --
- libs/xmlrpc-c/Windows/xmltok.2010.vcxproj | 213 -
- libs/xmlrpc-c/Windows/xmltok.dsp | 276 +-
+ libs/xmlrpc-c/Windows/xmlrpcclient.dsp | 106 +
+ libs/xmlrpc-c/Windows/xmlrpccpp.dsp | 5 +-
+ libs/xmlrpc-c/Windows/xmltok.2008.vcproj | 455 ---
+ libs/xmlrpc-c/Windows/xmltok.2010.vcxproj | 213 --
+ libs/xmlrpc-c/Windows/xmltok.dsp | 4 +-
libs/xmlrpc-c/common.mk | 130 +-
libs/xmlrpc-c/conf/abyss_root/conf/abyss.conf | 56 -
- libs/xmlrpc-c/conf/abyss_root/conf/mime.types | 276 -
+ libs/xmlrpc-c/conf/abyss_root/conf/mime.types | 276 --
libs/xmlrpc-c/conf/abyss_root/htdocs/index.htm | 21 -
libs/xmlrpc-c/config.mk.in | 97 +-
libs/xmlrpc-c/configure.gnu | 4 -
libs/xmlrpc-c/debian/xmlrpc-c0.examples | 3 -
libs/xmlrpc-c/debian/xmlrpc-c0.files | 2 -
libs/xmlrpc-c/dll-common.make | 22 -
+ libs/xmlrpc-c/dll-common.mk | 22 +
libs/xmlrpc-c/doc/INSTALL | 44 +-
libs/xmlrpc-c/dylib-common.make | 37 -
+ libs/xmlrpc-c/dylib-common.mk | 37 +
libs/xmlrpc-c/examples/.cvsignore | 11 -
libs/xmlrpc-c/examples/Makefile | 57 +-
libs/xmlrpc-c/examples/README | 15 +-
libs/xmlrpc-c/examples/auth_client.c | 2 +-
+ libs/xmlrpc-c/examples/compound_value_client.c | 161 +
+ libs/xmlrpc-c/examples/compound_value_server.c | 199 ++
libs/xmlrpc-c/examples/cpp/.cvsignore | 4 -
libs/xmlrpc-c/examples/cpp/Makefile | 58 +-
+ .../examples/cpp/callinfo_abyss_server.cpp | 133 +
libs/xmlrpc-c/examples/cpp/meerkat-app-list.cpp | 108 -
libs/xmlrpc-c/examples/cpp/pstream_client.cpp | 2 +-
.../xmlrpc-c/examples/cpp/pstream_inetd_server.cpp | 9 +-
+ .../examples/cpp/pstream_serial_server.cpp | 84 +
libs/xmlrpc-c/examples/cpp/xmlrpc_inetd_server.cpp | 25 +-
.../examples/cpp/xmlrpc_sample_add_server.cpp | 7 +-
+ .../examples/cpp/xmlrpc_sample_add_server_cgi.cpp | 62 +
libs/xmlrpc-c/examples/gen_sample_add_xml.c | 2 +-
libs/xmlrpc-c/examples/interrupted_client.c | 3 +-
libs/xmlrpc-c/examples/interrupted_server.c | 17 +-
+ libs/xmlrpc-c/examples/json.c | 115 +
libs/xmlrpc-c/examples/query-meerkat.c | 156 -
libs/xmlrpc-c/examples/synch_client.c | 4 +-
libs/xmlrpc-c/examples/xmlrpc_asynch_client.c | 6 +-
libs/xmlrpc-c/include/xmlrpc-c/base.h | 282 +-
libs/xmlrpc-c/include/xmlrpc-c/base.hpp | 252 +-
libs/xmlrpc-c/include/xmlrpc-c/base64.hpp | 5 +-
+ libs/xmlrpc-c/include/xmlrpc-c/base64_int.h | 11 +
libs/xmlrpc-c/include/xmlrpc-c/base_int.h | 40 +-
libs/xmlrpc-c/include/xmlrpc-c/c_util.h | 23 +-
libs/xmlrpc-c/include/xmlrpc-c/client.h | 141 +-
libs/xmlrpc-c/include/xmlrpc-c/girerr.hpp | 9 +-
libs/xmlrpc-c/include/xmlrpc-c/girmem.hpp | 10 +-
libs/xmlrpc-c/include/xmlrpc-c/inttypes.h | 3 +
+ libs/xmlrpc-c/include/xmlrpc-c/json.h | 39 +
libs/xmlrpc-c/include/xmlrpc-c/oldcppwrapper.hpp | 19 +-
libs/xmlrpc-c/include/xmlrpc-c/packetsocket.hpp | 64 +-
libs/xmlrpc-c/include/xmlrpc-c/registry.hpp | 90 +-
libs/xmlrpc-c/include/xmlrpc-c/server_abyss.h | 81 +-
libs/xmlrpc-c/include/xmlrpc-c/server_abyss.hpp | 110 +-
libs/xmlrpc-c/include/xmlrpc-c/server_cgi.h | 11 +-
+ libs/xmlrpc-c/include/xmlrpc-c/server_cgi.hpp | 45 +
libs/xmlrpc-c/include/xmlrpc-c/server_pstream.hpp | 139 +-
libs/xmlrpc-c/include/xmlrpc-c/server_w32httpsys.h | 4 +-
libs/xmlrpc-c/include/xmlrpc-c/sleep_int.h | 11 +
libs/xmlrpc-c/include/xmlrpc-c/string_int.h | 53 +-
+ libs/xmlrpc-c/include/xmlrpc-c/string_number.h | 21 +
libs/xmlrpc-c/include/xmlrpc-c/time_int.h | 4 +
libs/xmlrpc-c/include/xmlrpc-c/timeout.hpp | 7 +-
libs/xmlrpc-c/include/xmlrpc-c/transport.h | 5 +
libs/xmlrpc-c/include/xmlrpc-c/util_int.h | 13 +-
libs/xmlrpc-c/include/xmlrpc-c/xml.hpp | 24 +-
libs/xmlrpc-c/irix-common.make | 31 -
+ libs/xmlrpc-c/irix-common.mk | 31 +
libs/xmlrpc-c/lib/abyss/change.log | 34 -
libs/xmlrpc-c/lib/abyss/htdocs/index.htm | 21 -
libs/xmlrpc-c/lib/abyss/patch_notes.txt | 114 -
libs/xmlrpc-c/lib/abyss/src/file.c | 1 +
libs/xmlrpc-c/lib/abyss/src/handler.c | 49 +-
libs/xmlrpc-c/lib/abyss/src/handler.h | 2 +
- libs/xmlrpc-c/lib/abyss/src/http.c | 407 +-
+ libs/xmlrpc-c/lib/abyss/src/http.c | 407 +--
libs/xmlrpc-c/lib/abyss/src/http.h | 8 +-
libs/xmlrpc-c/lib/abyss/src/main.c | 8 +-
libs/xmlrpc-c/lib/abyss/src/response.c | 275 +-
- libs/xmlrpc-c/lib/abyss/src/server.c | 338 +-
+ libs/xmlrpc-c/lib/abyss/src/server.c | 338 ++-
libs/xmlrpc-c/lib/abyss/src/server.h | 8 +-
libs/xmlrpc-c/lib/abyss/src/session.c | 55 +-
libs/xmlrpc-c/lib/abyss/src/session.h | 24 +-
libs/xmlrpc-c/lib/abyss/src/socket.h | 4 +-
libs/xmlrpc-c/lib/abyss/src/socket_openssl.c | 2 +
libs/xmlrpc-c/lib/abyss/src/socket_unix.c | 175 +-
- libs/xmlrpc-c/lib/abyss/src/socket_win.c | 319 +-
- libs/xmlrpc-c/lib/abyss/src/thread.c | 228 -
+ libs/xmlrpc-c/lib/abyss/src/socket_win.c | 1889 ++++++------
+ libs/xmlrpc-c/lib/abyss/src/thread.c | 228 --
libs/xmlrpc-c/lib/abyss/src/thread.h | 4 +-
libs/xmlrpc-c/lib/abyss/src/thread_fork.c | 11 +-
libs/xmlrpc-c/lib/abyss/src/thread_pthread.c | 72 +-
libs/xmlrpc-c/lib/abyss/src/thread_windows.c | 27 +-
libs/xmlrpc-c/lib/abyss/version.txt | 1 -
libs/xmlrpc-c/lib/curl_transport/Makefile | 20 +-
- .../lib/curl_transport/xmlrpc_curl_transport.c | 1838 ++---
+ libs/xmlrpc-c/lib/curl_transport/curlmulti.c | 313 ++
+ libs/xmlrpc-c/lib/curl_transport/curlmulti.h | 51 +
+ libs/xmlrpc-c/lib/curl_transport/curltransaction.c | 753 +++++
+ libs/xmlrpc-c/lib/curl_transport/curltransaction.h | 120 +
+ libs/xmlrpc-c/lib/curl_transport/curlversion.h | 20 +
+ libs/xmlrpc-c/lib/curl_transport/lock.h | 24 +
+ libs/xmlrpc-c/lib/curl_transport/lock_pthread.c | 49 +
+ libs/xmlrpc-c/lib/curl_transport/lock_pthread.h | 9 +
+ .../lib/curl_transport/xmlrpc_curl_transport.c | 1838 +++---------
.../lib/curl_transport/xmlrpc_curl_transport.h | 8 -
libs/xmlrpc-c/lib/expat/.cvsignore | 1 -
- libs/xmlrpc-c/lib/expat/Makefile.in | 314 -
+ libs/xmlrpc-c/lib/expat/Makefile | 39 +
+ libs/xmlrpc-c/lib/expat/Makefile.in | 314 --
libs/xmlrpc-c/lib/expat/expat.dsw | 74 -
libs/xmlrpc-c/lib/expat/gennmtab/.cvsignore | 1 -
libs/xmlrpc-c/lib/expat/gennmtab/Makefile | 8 +-
libs/xmlrpc-c/lib/expat/gennmtab/gennmtab.dsp | 110 -
libs/xmlrpc-c/lib/expat/sample/.cvsignore | 1 -
- libs/xmlrpc-c/lib/expat/sample/Makefile.in | 208 -
+ libs/xmlrpc-c/lib/expat/sample/Makefile.in | 208 --
libs/xmlrpc-c/lib/expat/sample/build.bat | 4 -
libs/xmlrpc-c/lib/expat/sample/elements.c | 46 -
libs/xmlrpc-c/lib/expat/xmlparse/.cvsignore | 1 -
- libs/xmlrpc-c/lib/expat/xmlparse/Makefile.in | 344 -
+ libs/xmlrpc-c/lib/expat/xmlparse/Makefile | 93 +
+ libs/xmlrpc-c/lib/expat/xmlparse/Makefile.in | 344 ---
libs/xmlrpc-c/lib/expat/xmlparse/xmlparse.c | 207 +-
- libs/xmlrpc-c/lib/expat/xmlparse/xmlparse.dsp | 279 -
+ libs/xmlrpc-c/lib/expat/xmlparse/xmlparse.dsp | 279 --
libs/xmlrpc-c/lib/expat/xmlparse/xmlparse.h | 94 +-
libs/xmlrpc-c/lib/expat/xmltok/.cvsignore | 1 -
libs/xmlrpc-c/lib/expat/xmltok/Makefile | 21 +-
libs/xmlrpc-c/lib/expat/xmltok/nametab.h | 150 -
libs/xmlrpc-c/lib/expat/xmltok/xmlrole.h | 9 +-
libs/xmlrpc-c/lib/expat/xmltok/xmltok.c | 62 +-
- libs/xmlrpc-c/lib/expat/xmltok/xmltok.dsp | 259 -
+ libs/xmlrpc-c/lib/expat/xmltok/xmltok.dsp | 259 --
libs/xmlrpc-c/lib/expat/xmltok/xmltok.h | 41 +-
- libs/xmlrpc-c/lib/expat/xmltok/xmltok_impl.c | 391 +-
+ libs/xmlrpc-c/lib/expat/xmltok/xmltok_impl.c | 391 ++-
libs/xmlrpc-c/lib/expat/xmlwf/.cvsignore | 1 -
libs/xmlrpc-c/lib/expat/xmlwf/xmlfile.c | 2 +-
libs/xmlrpc-c/lib/libutil/Makefile | 18 +-
libs/xmlrpc-c/lib/libutil/asprintf.c | 135 +-
+ libs/xmlrpc-c/lib/libutil/base64.c | 49 +
libs/xmlrpc-c/lib/libutil/error.c | 4 +-
libs/xmlrpc-c/lib/libutil/make_printable.c | 2 +-
libs/xmlrpc-c/lib/libutil/memblock.c | 47 +-
libs/xmlrpc-c/lib/libutil/select.c | 6 +-
- libs/xmlrpc-c/lib/libutil/utf8.c | 370 +-
+ libs/xmlrpc-c/lib/libutil/string_number.c | 46 +
+ libs/xmlrpc-c/lib/libutil/utf8.c | 370 ++-
libs/xmlrpc-c/lib/libwww_transport/Makefile | 15 +-
.../lib/libwww_transport/xmlrpc_libwww_transport.c | 1 +
.../lib/libwww_transport/xmlrpc_libwww_transport.h | 8 -
libs/xmlrpc-c/lib/wininet_transport/Makefile | 13 +-
.../wininet_transport/xmlrpc_wininet_transport.c | 19 +-
.../wininet_transport/xmlrpc_wininet_transport.h | 8 -
- libs/xmlrpc-c/ltconfig | 3078 --------
+ libs/xmlrpc-c/ltconfig | 3078 --------------------
libs/xmlrpc-c/src/.cvsignore | 6 -
libs/xmlrpc-c/src/Makefile | 64 +-
libs/xmlrpc-c/src/cpp/.cvsignore | 1 -
libs/xmlrpc-c/src/cpp/Makefile | 179 +-
libs/xmlrpc-c/src/cpp/base64.cpp | 2 +-
libs/xmlrpc-c/src/cpp/client.cpp | 47 +-
- libs/xmlrpc-c/src/cpp/cpptest.cpp | 1187 ---
+ libs/xmlrpc-c/src/cpp/cpptest.cpp | 1187 --------
libs/xmlrpc-c/src/cpp/curl.cpp | 147 +-
libs/xmlrpc-c/src/cpp/env_wrap.hpp | 3 +-
libs/xmlrpc-c/src/cpp/libwww.cpp | 3 +-
- libs/xmlrpc-c/src/cpp/packetsocket.cpp | 561 +-
+ libs/xmlrpc-c/src/cpp/packetsocket.cpp | 561 +++-
libs/xmlrpc-c/src/cpp/pstream.cpp | 49 +-
libs/xmlrpc-c/src/cpp/registry.cpp | 170 +-
- libs/xmlrpc-c/src/cpp/server_abyss.cpp | 571 +-
+ libs/xmlrpc-c/src/cpp/server_abyss.cpp | 571 +++-
+ libs/xmlrpc-c/src/cpp/server_cgi.cpp | 354 +++
libs/xmlrpc-c/src/cpp/server_pstream.cpp | 265 +-
+ libs/xmlrpc-c/src/cpp/server_pstream_conn.cpp | 364 +++
libs/xmlrpc-c/src/cpp/test/Makefile | 33 +-
+ libs/xmlrpc-c/src/cpp/test/base64.cpp | 54 +
+ libs/xmlrpc-c/src/cpp/test/base64.hpp | 9 +
libs/xmlrpc-c/src/cpp/test/registry.cpp | 270 +-
libs/xmlrpc-c/src/cpp/test/server_abyss.cpp | 61 +-
- libs/xmlrpc-c/src/cpp/test/server_pstream.cpp | 777 +-
- libs/xmlrpc-c/src/cpp/test/test.cpp | 403 +-
+ libs/xmlrpc-c/src/cpp/test/server_pstream.cpp | 777 ++++-
+ libs/xmlrpc-c/src/cpp/test/test.cpp | 403 +--
libs/xmlrpc-c/src/cpp/test/testclient.cpp | 81 +-
+ libs/xmlrpc-c/src/cpp/test/value.cpp | 453 +++
+ libs/xmlrpc-c/src/cpp/test/value.hpp | 9 +
+ libs/xmlrpc-c/src/cpp/test/xml.cpp | 100 +
+ libs/xmlrpc-c/src/cpp/test/xml.hpp | 9 +
libs/xmlrpc-c/src/cpp/value.cpp | 232 +-
libs/xmlrpc-c/src/cpp/xml.cpp | 155 +-
libs/xmlrpc-c/src/double.c | 29 +-
+ libs/xmlrpc-c/src/json.c | 1466 ++++++++++
libs/xmlrpc-c/src/method.c | 18 +-
libs/xmlrpc-c/src/method.h | 5 +
+ libs/xmlrpc-c/src/parse_datetime.c | 466 +++
+ libs/xmlrpc-c/src/parse_datetime.h | 12 +
libs/xmlrpc-c/src/parse_value.c | 95 +-
libs/xmlrpc-c/src/registry.c | 73 +-
libs/xmlrpc-c/src/system_method.c | 172 +-
libs/xmlrpc-c/src/test/server_abyss.c | 43 +-
libs/xmlrpc-c/src/test/test.c | 87 +-
libs/xmlrpc-c/src/test/test.h | 109 -
+ libs/xmlrpc-c/src/test/testtool.c | 65 +
+ libs/xmlrpc-c/src/test/testtool.h | 80 +
libs/xmlrpc-c/src/test/value.c | 258 +-
+ libs/xmlrpc-c/src/test/value_datetime.c | 424 +++
+ libs/xmlrpc-c/src/test/value_datetime.h | 7 +
libs/xmlrpc-c/src/test/xml_data.h | 3 +
libs/xmlrpc-c/src/trace.c | 3 +-
libs/xmlrpc-c/src/version.c | 11 +
libs/xmlrpc-c/src/xmlrpc_array.c | 37 +-
libs/xmlrpc-c/src/xmlrpc_base64.c | 195 +-
libs/xmlrpc-c/src/xmlrpc_build.c | 26 +-
- libs/xmlrpc-c/src/xmlrpc_builddecomp.c | 973 ---
- libs/xmlrpc-c/src/xmlrpc_client.c | 403 +-
+ libs/xmlrpc-c/src/xmlrpc_builddecomp.c | 973 -------
+ libs/xmlrpc-c/src/xmlrpc_client.c | 403 ++-
libs/xmlrpc-c/src/xmlrpc_client_global.c | 114 +-
libs/xmlrpc-c/src/xmlrpc_data.c | 37 +-
- libs/xmlrpc-c/src/xmlrpc_datetime.c | 587 +-
+ libs/xmlrpc-c/src/xmlrpc_datetime.c | 587 ++--
libs/xmlrpc-c/src/xmlrpc_decompose.c | 7 +-
libs/xmlrpc-c/src/xmlrpc_expat.c | 32 +-
libs/xmlrpc-c/src/xmlrpc_libxml2.c | 15 +-
libs/xmlrpc-c/src/xmlrpc_parse.c | 161 +-
- libs/xmlrpc-c/src/xmlrpc_registry.c | 830 ---
+ libs/xmlrpc-c/src/xmlrpc_registry.c | 830 ------
libs/xmlrpc-c/src/xmlrpc_serialize.c | 176 +-
- libs/xmlrpc-c/src/xmlrpc_server_abyss.c | 672 +-
+ libs/xmlrpc-c/src/xmlrpc_server_abyss.c | 672 +++--
libs/xmlrpc-c/src/xmlrpc_server_cgi.c | 13 +-
libs/xmlrpc-c/src/xmlrpc_server_info.c | 7 +
libs/xmlrpc-c/src/xmlrpc_server_w32httpsys.c | 42 +-
libs/xmlrpc-c/src/xmlrpc_string.c | 34 +-
libs/xmlrpc-c/src/xmlrpc_struct.c | 114 +-
libs/xmlrpc-c/src/xmlrpc_strutil.c | 75 -
- libs/xmlrpc-c/src/xmlrpc_support.c | 394 -
+ libs/xmlrpc-c/src/xmlrpc_support.c | 394 ---
libs/xmlrpc-c/src/xmlrpc_transport.c | 143 -
- libs/xmlrpc-c/src/xmlrpc_utf8.c | 376 -
+ libs/xmlrpc-c/src/xmlrpc_utf8.c | 376 ---
+ libs/xmlrpc-c/srcdir.mk.in | 1 +
libs/xmlrpc-c/tools/.cvsignore | 1 -
libs/xmlrpc-c/tools/Makefile | 13 +-
libs/xmlrpc-c/tools/Makefile.common | 47 -
.../tools/xmlrpc_transport/xmlrpc_transport | 120 -
.../tools/xmlrpc_transport/xmlrpc_transport.c | 2 +-
libs/xmlrpc-c/transport_config.make | 39 -
+ libs/xmlrpc-c/transport_config.mk | 39 +
libs/xmlrpc-c/unix-common.make | 79 -
+ libs/xmlrpc-c/unix-common.mk | 82 +
libs/xmlrpc-c/version.h | 8 -
- libs/xmlrpc-c/xmlrpc-c-config.in | 180 -
+ libs/xmlrpc-c/version.mk | 11 +
+ libs/xmlrpc-c/xmlrpc-c-config.in | 180 --
libs/xmlrpc-c/xmlrpc-c-config.main | 24 +-
libs/xmlrpc-c/xmlrpc-c-config.test.in | 153 -
libs/xmlrpc-c/xmlrpc-c-config.test.main | 33 +-
libs/xmlrpc-c/xmlrpc_config.h.in | 76 +-
src/include/switch_event.h | 16 +-
src/include/switch_xml.h | 8 +-
- src/mod/applications/mod_commands/mod_commands.c | 766 +-
+ src/mod/applications/mod_commands/mod_commands.c | 766 ++---
src/mod/languages/mod_lua/mod_lua.cpp | 10 +-
src/mod/xml_int/mod_xml_rpc/Makefile | 27 +-
- .../xml_int/mod_xml_rpc/mod_xml_rpc.2010.vcxproj | 320 +-
- src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.c | 467 +-
+ .../xml_int/mod_xml_rpc/mod_xml_rpc.2010.vcxproj | 28 +-
+ src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.c | 467 +--
src/switch_loadable_module.c | 4 +-
src/switch_xml.c | 25 +-
- 328 files changed, 20620 insertions(+), 34268 deletions(-)
+ w32/xmlrpc.props | 15 +
+ w32/xmlrpc.vsprops | 15 +
+ 413 files changed, 34400 insertions(+), 26419 deletions(-)
diff --git a/.gitignore b/.gitignore
-index 1039628..ffc7fb1 100644
+index 1039628..9df71cc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -29,6 +29,7 @@
-libs/srtp/a.out.dSYM/Contents/Info.plist
-libs/srtp/a.out.dSYM/Contents/Resources/DWARF/a.out
+*dSYM*
-+/libs/xmlrpc-c/lib/expat/xmltok/nametab.h
++/libs/xmlrpc-c/lib/expat/xmltok/nametab.h\r
diff --git a/Freeswitch.2008.sln b/Freeswitch.2008.sln
-index 62b2459..c3e0c0f 100644
+index 62b2459..edb049f 100644
--- a/Freeswitch.2008.sln
+++ b/Freeswitch.2008.sln
-@@ -1,2941 +1,2961 @@
--\r
--Microsoft Visual Studio Solution File, Format Version 10.00\r
--# Visual Studio 2008\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Codecs", "Codecs", "{F881ADA2-2F1A-4046-9FEB-191D9422D781}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Endpoints", "Endpoints", "{9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Applications", "Applications", "{E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dialplans", "Dialplans", "{C5F182F9-754A-4EC5-B50F-76ED02BE13F4}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Event Handlers", "Event Handlers", "{9ADF1E48-2F5C-4ED7-A893-596259FABFE0}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Formats", "Formats", "{A5A27244-AD24-46E5-B01B-840CD296C91D}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Docs", "Docs", "{CBD81696-EFB4-4D2F-8451-1B8DAA86155A}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Directories", "Directories", "{B8F5B47B-8568-46EB-B320-64C17D2A98BC}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Languages", "Languages", "{0C808854-54D1-4230-BFF5-77B5FD905000}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ASR-TTS", "ASR-TTS", "{4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Loggers", "Loggers", "{A7AB4405-FDB7-4853-9FBB-1516B1C3D80A}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XML Interfaces", "XML Interfaces", "{F69A4A6B-9360-4EBB-A280-22AA3C455AC5}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Libraries", "_Libraries", "{EB910B0D-F27D-4B62-B67B-DE834C99AC5B}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Downloads", "_Downloads", "{C120A020-773F-4EA3-923F-B67AF28B750D}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "say", "say", "{6CD61A1D-797C-470A-BE08-8C31B68BB336}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Config", "_Config", "{57D119DC-484F-420F-B9E9-8589FD9A8DF8}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Default", "Default", "{3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\freeswitch.xml = conf\vanilla\freeswitch.xml\r
-- conf\vanilla\vars.xml = conf\vanilla\vars.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Build System", "_Build System", "{DB1024A8-41BF-4AD7-9AE6-13202230D1F3}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- acsite.m4 = acsite.m4\r
-- bootstrap.sh = bootstrap.sh\r
-- build\buildlib.sh = build\buildlib.sh\r
-- configure.in = configure.in\r
-- Makefile.am = Makefile.am\r
-- build\modmake.rules.in = build\modmake.rules.in\r
-- build\modules.conf.in = build\modules.conf.in\r
-- libs\win32\util.vbs = libs\win32\util.vbs\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "m4", "m4", "{CDE9B06A-3C27-4987-8FAE-DF1006BC705D}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- build\config\ac_cflags_gcc_option.m4 = build\config\ac_cflags_gcc_option.m4\r
-- build\config\ac_cflags_sun_option.m4 = build\config\ac_cflags_sun_option.m4\r
-- build\config\ac_gcc_archflag.m4 = build\config\ac_gcc_archflag.m4\r
-- build\config\ac_gcc_x86_cpuid.m4 = build\config\ac_gcc_x86_cpuid.m4\r
-- build\config\ac_prog_gzip.m4 = build\config\ac_prog_gzip.m4\r
-- build\config\ac_prog_wget.m4 = build\config\ac_prog_wget.m4\r
-- build\config\ax_cc_maxopt.m4 = build\config\ax_cc_maxopt.m4\r
-- build\config\ax_cflags_warn_all_ansi.m4 = build\config\ax_cflags_warn_all_ansi.m4\r
-- build\config\ax_check_compiler_flags.m4 = build\config\ax_check_compiler_flags.m4\r
-- build\config\ax_compiler_vendor.m4 = build\config\ax_compiler_vendor.m4\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "autoload_configs", "autoload_configs", "{3C90CCF0-2CDD-4A7A-ACFF-208C1E271692}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\autoload_configs\alsa.conf.xml = conf\vanilla\autoload_configs\alsa.conf.xml\r
-- conf\vanilla\autoload_configs\conference.conf.xml = conf\vanilla\autoload_configs\conference.conf.xml\r
-- conf\vanilla\autoload_configs\console.conf.xml = conf\vanilla\autoload_configs\console.conf.xml\r
-- conf\vanilla\autoload_configs\dialplan_directory.conf.xml = conf\vanilla\autoload_configs\dialplan_directory.conf.xml\r
-- conf\vanilla\autoload_configs\dingaling.conf.xml = conf\vanilla\autoload_configs\dingaling.conf.xml\r
-- conf\vanilla\autoload_configs\enum.conf.xml = conf\vanilla\autoload_configs\enum.conf.xml\r
-- conf\vanilla\autoload_configs\event_multicast.conf.xml = conf\vanilla\autoload_configs\event_multicast.conf.xml\r
-- conf\vanilla\autoload_configs\event_socket.conf.xml = conf\vanilla\autoload_configs\event_socket.conf.xml\r
-- conf\vanilla\autoload_configs\ivr.conf.xml = conf\vanilla\autoload_configs\ivr.conf.xml\r
-- conf\vanilla\autoload_configs\java.conf.xml = conf\vanilla\autoload_configs\java.conf.xml\r
-- conf\vanilla\autoload_configs\limit.conf.xml = conf\vanilla\autoload_configs\limit.conf.xml\r
-- conf\vanilla\autoload_configs\local_stream.conf.xml = conf\vanilla\autoload_configs\local_stream.conf.xml\r
-- conf\vanilla\autoload_configs\logfile.conf.xml = conf\vanilla\autoload_configs\logfile.conf.xml\r
-- conf\vanilla\autoload_configs\modules.conf.xml = conf\vanilla\autoload_configs\modules.conf.xml\r
-- conf\vanilla\autoload_configs\openmrcp.conf.xml = conf\vanilla\autoload_configs\openmrcp.conf.xml\r
-- conf\vanilla\autoload_configs\portaudio.conf.xml = conf\vanilla\autoload_configs\portaudio.conf.xml\r
-- conf\vanilla\autoload_configs\rss.conf.xml = conf\vanilla\autoload_configs\rss.conf.xml\r
-- conf\vanilla\autoload_configs\sofia.conf.xml = conf\vanilla\autoload_configs\sofia.conf.xml\r
-- conf\vanilla\autoload_configs\spidermonkey.conf.xml = conf\vanilla\autoload_configs\spidermonkey.conf.xml\r
-- conf\vanilla\autoload_configs\switch.conf.xml = conf\vanilla\autoload_configs\switch.conf.xml\r
-- conf\vanilla\autoload_configs\syslog.conf.xml = conf\vanilla\autoload_configs\syslog.conf.xml\r
-- conf\vanilla\autoload_configs\voicemail.conf.xml = conf\vanilla\autoload_configs\voicemail.conf.xml\r
-- conf\vanilla\autoload_configs\wanpipe.conf.xml = conf\vanilla\autoload_configs\wanpipe.conf.xml\r
-- conf\vanilla\autoload_configs\woomera.conf.xml = conf\vanilla\autoload_configs\woomera.conf.xml\r
-- conf\vanilla\autoload_configs\xml_cdr.conf.xml = conf\vanilla\autoload_configs\xml_cdr.conf.xml\r
-- conf\vanilla\autoload_configs\xml_curl.conf.xml = conf\vanilla\autoload_configs\xml_curl.conf.xml\r
-- conf\vanilla\autoload_configs\xml_rpc.conf.xml = conf\vanilla\autoload_configs\xml_rpc.conf.xml\r
-- conf\vanilla\autoload_configs\zeroconf.conf.xml = conf\vanilla\autoload_configs\zeroconf.conf.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "dialplan", "dialplan", "{C7E2382E-2C22-4D18-BF93-80C6A1FFA7AC}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\dialplan\default.xml = conf\vanilla\dialplan\default.xml\r
-- conf\vanilla\dialplan\public.xml = conf\vanilla\dialplan\public.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "directory", "directory", "{FC71C66E-E268-4EAD-B1F5-F008DC382E83}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\directory\default.xml = conf\vanilla\directory\default.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "sip_profiles", "sip_profiles", "{8E2E8798-8B6F-4A55-8E4F-4E6FDE40ED26}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\sip_profiles\external.xml = conf\vanilla\sip_profiles\external.xml\r
-- conf\vanilla\sip_profiles\internal.xml = conf\vanilla\sip_profiles\internal.xml\r
-- conf\vanilla\sip_profiles\nat.xml = conf\vanilla\sip_profiles\nat.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "lang", "lang", "{09455AA9-C243-4F16-A1A1-A016881A2765}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\directory\default.xml = conf\vanilla\directory\default.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "en", "en", "{57199684-EC63-4A60-9DC6-11815AF6B413}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\en\en.xml = conf\vanilla\lang\en\en.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "de", "de", "{2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\de\de.xml = conf\vanilla\lang\de\de.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "fr", "fr", "{D4A12E4C-DBDA-4614-BA26-3425AE9F60F5}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\fr\fr.xml = conf\vanilla\lang\fr\fr.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "demo", "demo", "{D3E5C8ED-3A6A-4FEA-92A2-48A0BA865358}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\de\demo\demo.xml = conf\vanilla\lang\de\demo\demo.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "vm", "vm", "{CC3E7F48-2590-49CB-AD8B-BE3650F55462}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\de\vm\tts.xml = conf\vanilla\lang\de\vm\tts.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "demo", "demo", "{765EF1B9-5027-4820-BC37-A44466A51631}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\en\demo\demo.xml = conf\vanilla\lang\en\demo\demo.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "vm", "vm", "{713E4747-1126-40B1-BD84-58F9A7745423}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\en\vm\sounds.xml = conf\vanilla\lang\en\vm\sounds.xml\r
-- conf\vanilla\lang\en\vm\tts.xml = conf\vanilla\lang\en\vm\tts.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "demo", "demo", "{F1B71990-EB04-4EB5-B28A-BC3EB6F7E843}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\fr\demo\demo.xml = conf\vanilla\lang\fr\demo\demo.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "vm", "vm", "{3DAF028C-AB5B-4183-A01B-DCC43F5A87F0}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\fr\vm\sounds.xml = conf\vanilla\lang\fr\vm\sounds.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FreeSwitchConsole", "w32\Console\FreeSwitchConsole.2008.vcproj", "{1AF3A893-F7BE-43DD-B697-8AB2397C0D67}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FreeSwitchCoreLib", "w32\Library\FreeSwitchCore.2008.vcproj", "{202D7A4E-760D-4D0E-AFA1-D7459CED30FF}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9} = {8D04B550-D240-4A44-8A18-35DA3F7038D9}\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C} = {89385C74-5860-4174-9CAF-A39E7C48909C}\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5} = {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3} = {F057DA7F-79E5-4B00-845C-EF446EF055E3}\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD} = {03207781-0D1C-4DB3-A71D-45C608F28DBD}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750} = {EEF031CB-FED8-451E-A471-91EC8D4F6750}\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3} = {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_g729", "src\mod\codecs\mod_g729\mod_g729.2008.vcproj", "{1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_sndfile", "src\mod\formats\mod_sndfile\mod_sndfile.2008.vcproj", "{AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4} = {3D0370CA-BED2-4657-A475-32375CBCB6E4}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_PortAudio", "src\mod\endpoints\mod_portaudio\mod_PortAudio.2008.vcproj", "{5FD31A25-5D83-4794-8BEE-904DAD84CE71}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99} = {0A18A071-125E-442F-AFF7-A3F68ABECF99}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_speex", "src\mod\codecs\mod_speex\mod_speex.2008.vcproj", "{5580D60E-0F77-4716-9CD4-B8E5986FA375}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4} = {E972C52F-9E85-4D65-B19C-031E511E9DB4}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD} = {03207781-0D1C-4DB3-A71D-45C608F28DBD}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "docs", "docs\docs.2008.vcproj", "{1A1FF289-4FD6-4285-A422-D31DD67A4723}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dialplan_xml", "src\mod\dialplans\mod_dialplan_xml\mod_dialplan_xml.2008.vcproj", "{07113B25-D3AF-4E04-BA77-4CD1171F022C}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_ldap", "src\mod\directories\mod_ldap\mod_ldap.2008.vcproj", "{EC3E5C7F-EE09-47E2-80FE-546363D14A98}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dialplan_directory", "src\mod\dialplans\mod_dialplan_directory\mod_dialplan_directory.2008.vcproj", "{A27CCA23-1541-4337-81A4-F0A6413078A0}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_event_multicast", "src\mod\event_handlers\mod_event_multicast\mod_event_multicast.2008.vcproj", "{784113EF-44D9-4949-835D-7065D3C7AD08}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libteletone", "libs\libteletone\libteletone.2008.vcproj", "{89385C74-5860-4174-9CAF-A39E7C48909C}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey", "src\mod\languages\mod_spidermonkey\mod_spidermonkey.2008.vcproj", "{1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D} = {204FA0DE-305D-4414-AE2E-F195A23F390D}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_cepstral", "src\mod\asr_tts\mod_cepstral\mod_cepstral.2008.vcproj", "{692F6330-4D87-4C82-81DF-40DB5892636E}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_ilbc", "src\mod\codecs\mod_ilbc\mod_ilbc.2008.vcproj", "{D3EC0AFF-76FC-4210-A825-9A17410660A3}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD} = {9A5DDF08-C88C-4A35-B7F6-D605228446BD}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dingaling", "src\mod\endpoints\mod_dingaling\mod_dingaling.2008.vcproj", "{FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54} = {1906D736-08BD-4EE1-924F-B536249B9A54}\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {B4B62169-5AD4-4559-8707-3D933AC5DB39}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3} = {E727E8F6-935D-46FE-8B0E-37834748A0E3}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_commands", "src\mod\applications\mod_commands\mod_commands.2008.vcproj", "{30A5B29C-983E-4580-9FD0-D647CCDCC7EB}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_console", "src\mod\loggers\mod_console\mod_console.2008.vcproj", "{1C453396-D912-4213-89FD-9B489162B7B5}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_rpc", "src\mod\xml_int\mod_xml_rpc\mod_xml_rpc.2008.vcproj", "{CBEC7225-0C21-4DA8-978E-1F158F8AD950}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
+@@ -281,12 +281,12 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_console", "src\mod\logg
+ EndProject\r
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_rpc", "src\mod\xml_int\mod_xml_rpc\mod_xml_rpc.2008.vcproj", "{CBEC7225-0C21-4DA8-978E-1F158F8AD950}"\r
+ ProjectSection(ProjectDependencies) = postProject\r
- {0D108721-EAE8-4BAF-8102-D8960EC93647} = {0D108721-EAE8-4BAF-8102-D8960EC93647}\r
- {B535402E-38D2-4D54-8360-423ACBD17192} = {B535402E-38D2-4D54-8360-423ACBD17192}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
- {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}\r
- {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA} = {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}\r
- {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9} = {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_rss", "src\mod\applications\mod_rss\mod_rss.2008.vcproj", "{B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_conference", "src\mod\applications\mod_conference\mod_conference.2008.vcproj", "{C24FB505-05D7-4319-8485-7540B44C8603}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dptools", "src\mod\applications\mod_dptools\mod_dptools.2008.vcproj", "{B5881A85-FE70-4F64-8607-2CAAE52669C6}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_event_socket", "src\mod\event_handlers\mod_event_socket\mod_event_socket.2008.vcproj", "{05515420-16DE-4E63-BE73-85BE85BA5142}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libdingaling", "libs\libdingaling\libdingaling.2008.vcproj", "{1906D736-08BD-4EE1-924F-B536249B9A54}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3} = {F057DA7F-79E5-4B00-845C-EF446EF055E3}\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3} = {E727E8F6-935D-46FE-8B0E-37834748A0E3}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsrtp", "libs\srtp\libsrtp.2008.vcproj", "{EEF031CB-FED8-451E-A471-91EC8D4F6750}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsqlite", "libs\win32\sqlite\sqlite.2008.vcproj", "{6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpcre", "libs\win32\pcre\libpcre.2008.vcproj", "{8D04B550-D240-4A44-8A18-35DA3F7038D9}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94} = {1CED5987-A529-46DC-B30F-870D85FF9C94}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpcre Generate pcre_chartables.c", "libs\win32\pcre\pcre_chartables.c.2008.vcproj", "{1CED5987-A529-46DC-B30F-870D85FF9C94}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libapr", "libs\win32\apr\libapr.2008.vcproj", "{F6C55D93-B927-4483-BB69-15AEF3DD2DFF}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libaprutil", "libs\win32\apr-util\libaprutil.2008.vcproj", "{F057DA7F-79E5-4B00-845C-EF446EF055E3}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F} = {155844C3-EC5F-407F-97A4-A2DDADED9B2F}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "iksemel", "libs\win32\iksemel\iksemel.2008.vcproj", "{E727E8F6-935D-46FE-8B0E-37834748A0E3}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsndfile", "libs\win32\libsndfile\libsndfile.2008.vcproj", "{3D0370CA-BED2-4657-A475-32375CBCB6E4}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curllib", "libs\win32\curl\curllib.2008.vcproj", "{87EE9DA4-DE1E-4448-8324-183C98DCA588}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xml", "libs\win32\apr-util\xml.2008.vcproj", "{155844C3-EC5F-407F-97A4-A2DDADED9B2F}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "js", "libs\win32\js\js.2008.vcproj", "{204FA0DE-305D-4414-AE2E-F195A23F390D}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_sofia", "src\mod\endpoints\mod_sofia\mod_sofia.2008.vcproj", "{0DF3ABD0-DDC0-4265-B778-07C66780979B}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4} = {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {B4B62169-5AD4-4559-8707-3D933AC5DB39}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0} = {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsofia_sip_ua_static", "libs\win32\sofia\libsofia_sip_ua_static.2008.vcproj", "{70A49BC2-7500-41D0-B75D-EDCC5BE987A0}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4} = {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A} = {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {B4B62169-5AD4-4559-8707-3D933AC5DB39}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download PTHREAD", "libs\win32\Download PTHREAD.2008.vcproj", "{8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pthread", "libs\win32\pthread\pthread.2008.vcproj", "{DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A} = {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_g723_1", "src\mod\codecs\mod_g723_1\mod_g723_1.2008.vcproj", "{FEA1EEF7-876F-48DE-88BF-C0E3E606D758}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_native_file", "src\mod\formats\mod_native_file\mod_native_file.2008.vcproj", "{9254C4B0-6F60-42B6-BB3A-36D63FC001C7}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_core_db", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_core_db.2008.vcproj", "{ACFFF684-4D19-4D48-AF12-88EA1D778BDF}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D} = {204FA0DE-305D-4414-AE2E-F195A23F390D}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_teletone", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_teletone.2008.vcproj", "{8F992C49-6C51-412F-B2A3-34EAB708EB65}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C} = {89385C74-5860-4174-9CAF-A39E7C48909C}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D} = {204FA0DE-305D-4414-AE2E-F195A23F390D}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_enum", "src\mod\applications\mod_enum\mod_enum.2008.vcproj", "{71A967D5-0E99-4CEF-A587-98836EE6F2EF}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940} = {23B4D303-79FC-49E0-89E2-2280E7E28940}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_odbc", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_odbc.2008.vcproj", "{0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D} = {204FA0DE-305D-4414-AE2E-F195A23F390D}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_curl", "src\mod\xml_int\mod_xml_curl\mod_xml_curl.2008.vcproj", "{AB91A099-7690-4ECF-8994-E458F4EA1ED4}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_en", "src\mod\say\mod_say_en\mod_say_en.2008.vcproj", "{988CACF7-3FCB-4992-BE69-77872AE67DC8}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "portaudio", "libs\portaudio\build\msvc\portaudio.2008.vcproj", "{0A18A071-125E-442F-AFF7-A3F68ABECF99}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_cdr", "src\mod\xml_int\mod_xml_cdr\mod_xml_cdr.2008.vcproj", "{08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_amr", "src\mod\codecs\mod_amr\mod_amr.2008.vcproj", "{8DEB383C-4091-4F42-A56F-C9E46D552D79}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_h26x", "src\mod\codecs\mod_h26x\mod_h26x.2008.vcproj", "{2C3C2423-234B-4772-8899-D3B137E5CA35}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_esf", "src\mod\applications\mod_esf\mod_esf.2008.vcproj", "{3850D93A-5F24-4922-BC1C-74D08C37C256}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_local_stream", "src\mod\formats\mod_local_stream\mod_local_stream.2008.vcproj", "{2CA40887-1622-46A1-A7F9-17FD7E7E545B}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_socket", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_socket.2008.vcproj", "{028C7278-05D7-4E18-82FE-BE231B844F41}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D} = {204FA0DE-305D-4414-AE2E-F195A23F390D}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_voicemail", "src\mod\applications\mod_voicemail\mod_voicemail.2008.vcproj", "{D7F1E3F2-A3F4-474C-8555-15122571AF52}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_de", "src\mod\say\mod_say_de\mod_say_de.2008.vcproj", "{5BC072DB-3826-48EA-AF34-FE32AA01E83B}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_es", "src\mod\say\mod_say_es\mod_say_es.2008.vcproj", "{FA429E98-8B03-45E6-A096-A4BC5E821DE4}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_fr", "src\mod\say\mod_say_fr\mod_say_fr.2008.vcproj", "{06E3A538-AB32-44F2-B477-755FF9CB5D37}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_it", "src\mod\say\mod_say_it\mod_say_it.2008.vcproj", "{6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_nl", "src\mod\say\mod_say_nl\mod_say_nl.2008.vcproj", "{A4B122CF-5196-476B-8C0E-D8BD59AC3C14}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_fifo", "src\mod\applications\mod_fifo\mod_fifo.2008.vcproj", "{75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_db", "src\mod\applications\mod_db\mod_db.2008.vcproj", "{F6A33240-8F29-48BD-98F0-826995911799}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_expr", "src\mod\applications\mod_expr\mod_expr.2008.vcproj", "{65A6273D-FCAB-4C55-B09E-65100141A5D4}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dialplan_asterisk", "src\mod\dialplans\mod_dialplan_asterisk\mod_dialplan_asterisk.2008.vcproj", "{E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_logfile", "src\mod\loggers\mod_logfile\mod_logfile.2008.vcproj", "{D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_cdr_csv", "src\mod\event_handlers\mod_cdr_csv\mod_cdr_csv.2008.vcproj", "{44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_tone_stream", "src\mod\formats\mod_tone_stream\mod_tone_stream.2008.vcproj", "{6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C} = {89385C74-5860-4174-9CAF-A39E7C48909C}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_fsv", "src\mod\applications\mod_fsv\mod_fsv.2008.vcproj", "{E3246D17-E29B-4AB5-962A-C69B0C5837BB}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_curl", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_curl.2008.vcproj", "{36E854E3-CE12-4348-A125-CCF3F9D74813}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D} = {204FA0DE-305D-4414-AE2E-F195A23F390D}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lua", "src\mod\languages\mod_lua\mod_lua.2008.vcproj", "{7B077E7F-1BE7-4291-AB86-55E527B25CAC}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {D0B36172-CD76-454A-9B89-990025266C2A} = {D0B36172-CD76-454A-9B89-990025266C2A}\r
-- EndProjectSection\r
--EndProject\r
++ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B} = {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}\r
++ {A4D67895-E709-40C7-82B6-DE1D12DDDE04} = {A4D67895-E709-40C7-82B6-DE1D12DDDE04}\r
++ {510BDAA8-C04D-47DB-8482-E6AF380D3E07} = {510BDAA8-C04D-47DB-8482-E6AF380D3E07}\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888} = {E5A9BCDA-B82D-4B08-B23E-9A782E367888}\r
++ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268} = {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}\r
+ EndProjectSection\r
+ EndProject\r
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_rss", "src\mod\applications\mod_rss\mod_rss.2008.vcproj", "{B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}"\r
+@@ -549,14 +549,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lua", "src\mod\language
+ {D0B36172-CD76-454A-9B89-990025266C2A} = {D0B36172-CD76-454A-9B89-990025266C2A}\r
+ EndProjectSection\r
+ EndProject\r
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "abyss", "libs\xmlrpc-c\Windows\abyss.2008.vcproj", "{D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}"\r
-EndProject\r
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmlrpc", "libs\xmlrpc-c\Windows\xmlrpc.2008.vcproj", "{CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}"\r
-EndProject\r
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmltok", "libs\xmlrpc-c\Windows\xmltok.2008.vcproj", "{B535402E-38D2-4D54-8360-423ACBD17192}"\r
-EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download sphinxbase", "libs\win32\Download sphinxbase.2008.vcproj", "{4F92B672-DADB-4047-8D6A-4BB3796733FD}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download sphinxmodel", "libs\win32\Download sphinxmodel.2008.vcproj", "{2DEE4895-1134-439C-B688-52203E57D878}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download pocketsphinx", "libs\win32\Download pocketsphinx.2008.vcproj", "{AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sphinxbase", "libs\win32\sphinxbase\sphinxbase.2008.vcproj", "{2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD} = {4F92B672-DADB-4047-8D6A-4BB3796733FD}\r
-- {2DEE4895-1134-439C-B688-52203E57D878} = {2DEE4895-1134-439C-B688-52203E57D878}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pocketsphinx", "libs\win32\pocketsphinx\pocketsphinx.2008.vcproj", "{94001A0E-A837-445C-8004-F918F10D0226}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D} = {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E} = {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_pocketsphinx", "src\mod\asr_tts\mod_pocketsphinx\mod_pocketsphinx.2008.vcproj", "{2286DA73-9FC5-45BC-A508-85994C3317AB}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {94001A0E-A837-445C-8004-F918F10D0226} = {94001A0E-A837-445C-8004-F918F10D0226}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD} = {4F92B672-DADB-4047-8D6A-4BB3796733FD}\r
-- {2DEE4895-1134-439C-B688-52203E57D878} = {2DEE4895-1134-439C-B688-52203E57D878}\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D} = {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E} = {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 8khzsound", "libs\win32\Download 8khz Sounds.2008.vcproj", "{3CE1DC99-8246-4DB1-A709-74F19F08EC67}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Sound Files", "Sound Files", "{4F227C26-768F-46A3-8684-1D08A46FB374}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 16khzsound", "libs\win32\Download 16khz Sounds.2008.vcproj", "{87A1FE3D-F410-4C8E-9591-8C625985BC70}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "8khz", "libs\win32\Sound_Files\8khz.2008.vcproj", "{7A8D8174-B355-4114-AFC1-04777CB9DE0A}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67} = {3CE1DC99-8246-4DB1-A709-74F19F08EC67}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "16khz", "libs\win32\Sound_Files\16khz.2008.vcproj", "{7EB71250-F002-4ED8-92CA-CA218114537A}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70} = {87A1FE3D-F410-4C8E-9591-8C625985BC70}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 32khzsound", "libs\win32\Dowload 32khz Sounds.2008.vcproj", "{6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "32khz", "libs\win32\Sound_Files\32khz.2008.vcproj", "{464AAB78-5489-4916-BE51-BF8D61822311}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F} = {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "flite", "libs\win32\flite\flite.2008.vcproj", "{0AD1177E-1FD8-4643-9391-431467A11084}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B} = {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_flite", "src\mod\asr_tts\mod_flite\mod_flite.2008.vcproj", "{66444AEE-554C-11DD-A9F0-8C5D56D89593}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B} = {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}\r
-- {0AD1177E-1FD8-4643-9391-431467A11084} = {0AD1177E-1FD8-4643-9391-431467A11084}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download FLITE", "libs\win32\Download FLITE.2008.vcproj", "{D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download LAME", "libs\win32\Download LAME.2008.vcproj", "{D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download LIBSHOUT", "libs\win32\Download LIBSHOUT.2008.vcproj", "{D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download OGG", "libs\win32\Download OGG.2008.vcproj", "{D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmp3lame", "libs\win32\libmp3lame\libmp3lame_vc7.vcproj", "{E316772F-5D8F-4F2A-8F71-094C3E859D34}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B} = {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libshout", "libs\win32\libshout\libshout.vcproj", "{D3D8B329-20BE-475E-9E83-653CEA0E0EF5}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B} = {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4} = {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_shout", "src\mod\formats\mod_shout\mod_shout.vcproj", "{38FE0559-9910-43A8-9E45-3E5004C27692}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5} = {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34} = {E316772F-5D8F-4F2A-8F71-094C3E859D34}\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4} = {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {419C8F80-D858-4B48-A25C-AF4007608137} = {419C8F80-D858-4B48-A25C-AF4007608137}\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libogg", "libs\win32\libogg\libogg.2008.vcproj", "{0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B} = {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_snom", "src\mod\applications\mod_snom\mod_snom.2008.vcproj", "{2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_zh", "src\mod\say\mod_say_zh\mod_say_zh.2008.vcproj", "{B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_managed", "src\mod\languages\mod_managed\mod_managed.vcproj", "{7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0} = {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FreeSWITCH.Managed", "src\mod\languages\mod_managed\managed\FreeSWITCH.Managed.csproj", "{834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download mpg123", "libs\win32\Download mpg123.2008.vcproj", "{E796E337-DE78-4303-8614-9A590862EE95}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmpg123", "libs\win32\mpg123\libmpg123.2008.vcproj", "{419C8F80-D858-4B48-A25C-AF4007608137}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {E796E337-DE78-4303-8614-9A590862EE95} = {E796E337-DE78-4303-8614-9A590862EE95}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_loopback", "src\mod\endpoints\mod_loopback\mod_loopback.2008.vcproj", "{B3F424EC-3D8F-417C-B244-3919D5E1A577}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_vmd", "src\mod\applications\mod_vmd\mod_vmd.2008.vcproj", "{14E4A972-9CFB-436D-B0A5-4943F3F80D47}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libg722_1", "libs\win32\libg722_1\libg722_1.vcproj", "{1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_siren", "src\mod\codecs\mod_siren\mod_siren.2008.vcproj", "{0B6C905B-142E-4999-B39D-92FF7951E921}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C} = {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "esl", "libs\esl\src\esl.2008.vcproj", "{CF405366-9558-4AE8-90EF-5E21B51CCB4E}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fs_cli", "libs\esl\fs_cli.2008.vcproj", "{D2FB8043-D208-4AEE-8F18-3B5857C871B9}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E} = {CF405366-9558-4AE8-90EF-5E21B51CCB4E}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_easyroute", "src\mod\applications\mod_easyroute\mod_easyroute.2008.vcproj", "{329FD5B0-EF28-4606-86D0-F6EA21CF8E36}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lcr", "src\mod\applications\mod_lcr\mod_lcr.2008.vcproj", "{1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libtiff", "libs\spandsp\src\libtiff.2008.vcproj", "{401A40CD-5DB4-4E34-AC68-FA99E9FAC014}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspandsp", "libs\spandsp\src\libspandsp.2008.vcproj", "{1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A} = {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838} = {329A6FA0-0FCC-4435-A950-E670AEFA9838}\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330} = {DEE932AB-5911-4700-9EEB-8C7090A0A330}\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014} = {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspeex", "libs\speex\win32\VS2008\libspeex\libspeex.vcproj", "{E972C52F-9E85-4D65-B19C-031E511E9DB4}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspeexdsp", "libs\speex\win32\VS2008\libspeexdsp\libspeexdsp.vcproj", "{03207781-0D1C-4DB3-A71D-45C608F28DBD}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libilbc", "libs\ilbc\libilbc.2008.vcproj", "{9A5DDF08-C88C-4A35-B7F6-D605228446BD}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lua51", "src\mod\languages\mod_lua\lua\lua.2008.vcproj", "{D0B36172-CD76-454A-9B89-990025266C2A}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_opal", "src\mod\endpoints\mod_opal\mod_opal_2008.vcproj", "{05C9FB27-480E-4D53-B3B7-6338E2526666}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_h323", "src\mod\endpoints\mod_h323\mod_h323_2008.vcproj", "{05C9FB27-480E-4D53-B3B7-7338E2514666}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_iSAC", "src\mod\codecs\mod_isac\mod_iSAC.2008.vcproj", "{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skinny", "src\mod\endpoints\mod_skinny\mod_skinny_2008.vcproj", "{CC1DD008-9406-448D-A0AD-33C3186CFADB}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_rtmp", "src\mod\endpoints\mod_rtmp\mod_rtmp_2008.vcproj", "{48414740-C693-4968-9846-EE058020C64F}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_at_dictionary", "libs\spandsp\src\msvc\make_at_dictionary.2008.vcproj", "{DEE932AB-5911-4700-9EEB-8C7090A0A330}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_modem_filter", "libs\spandsp\src\msvc\make_modem_filter.2008.vcproj", "{329A6FA0-0FCC-4435-A950-E670AEFA9838}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skel", "src\mod\applications\mod_skel\mod_skel.2008.vcproj", "{11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skypopen", "src\mod\endpoints\mod_skypopen\mod_skypopen.2008.vcproj", "{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 32khz music", "libs\win32\Dowload 32khz music.2008.vcproj", "{1F0A8A77-E661-418F-BB92-82172AE43803}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 8khz music", "libs\win32\Download 8khz music.2008.vcproj", "{4F5C9D55-98EF-4256-8311-32D7BD360406}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 16khz music", "libs\win32\Download 16khz music.2008.vcproj", "{E10571C4-E7F4-4608-B5F2-B22E7EB95400}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "8khz music", "libs\win32\Sound_Files\8khzmusic.2008.vcproj", "{D1ABE208-6442-4FB4-9AAD-1677E41BC870}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406} = {4F5C9D55-98EF-4256-8311-32D7BD360406}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "16khz music", "libs\win32\Sound_Files\16khzmusic.2008.vcproj", "{BA599D0A-4310-4505-91DA-6A6447B3E289}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400} = {E10571C4-E7F4-4608-B5F2-B22E7EB95400}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "32khz music", "libs\win32\Sound_Files\32khzmusic.2008.vcproj", "{EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803} = {1F0A8A77-E661-418F-BB92-82172AE43803}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_nibblebill", "src\mod\applications\mod_nibblebill\mod_nibblebill.2008.vcproj", "{3C977801-FE88-48F2-83D3-FA2EBFF6688E}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_ru", "src\mod\say\mod_say_ru\mod_say_ru.2008.vcproj", "{0382E8FD-CFDC-41C0-8B03-792C7C84FC31}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_valet_parking", "src\mod\applications\mod_valet_parking\mod_valet_parking.2008.vcproj", "{432DB165-1EB2-4781-A9C0-71E62610B20A}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libbroadvoice", "libs\broadvoice\src\libbroadvoice.2008.vcproj", "{CF70F278-3364-4395-A2E1-23501C9B8AD2}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_bv", "src\mod\codecs\mod_bv\mod_bv.2008.vcproj", "{D5C87B19-150D-4EF3-A671-96589BD2D14A}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2} = {CF70F278-3364-4395-A2E1-23501C9B8AD2}\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "unimrcp", "unimrcp", "{62F27B1A-C919-4A70-8478-51F178F3B18F}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "aprtoolkit", "libs\unimrcp\libs\apr-toolkit\aprtoolkit.2008.vcproj", "{13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3} = {F057DA7F-79E5-4B00-845C-EF446EF055E3}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mpf", "libs\unimrcp\libs\mpf\mpf.2008.vcproj", "{B5A00BFA-6083-4FAE-A097-71642D6473B5}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcp", "libs\unimrcp\libs\mrcp\mrcp.2008.vcproj", "{1C320193-46A6-4B34-9C56-8AB584FC1B56}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpclient", "libs\unimrcp\libs\mrcp-client\mrcpclient.2008.vcproj", "{72782932-37CC-46AE-8C7F-9A7B1A6EE108}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpsignaling", "libs\unimrcp\libs\mrcp-signaling\mrcpsignaling.2008.vcproj", "{12A49562-BAB9-43A3-A21D-15B60BBB4C31}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpv2transport", "libs\unimrcp\libs\mrcpv2-transport\mrcpv2transport.2008.vcproj", "{A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unirtsp", "libs\unimrcp\libs\uni-rtsp\unirtsp.2008.vcproj", "{504B3154-7A4F-459D-9877-B951021C3F1F}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpsofiasip", "libs\unimrcp\modules\mrcp-sofiasip\mrcpsofiasip.2008.vcproj", "{746F3632-5BB2-4570-9453-31D6D58A7D8E}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0} = {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpunirtsp", "libs\unimrcp\modules\mrcp-unirtsp\mrcpunirtsp.2008.vcproj", "{DEB01ACB-D65F-4A62-AED9-58C1054499E9}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_unimrcp", "src\mod\asr_tts\mod_unimrcp\mod_unimrcp.2008.vcproj", "{D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA} = {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108} = {72782932-37CC-46AE-8C7F-9A7B1A6EE108}\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E} = {746F3632-5BB2-4570-9453-31D6D58A7D8E}\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F} = {504B3154-7A4F-459D-9877-B951021C3F1F}\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31} = {12A49562-BAB9-43A3-A21D-15B60BBB4C31}\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {B4B62169-5AD4-4559-8707-3D933AC5DB39}\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3} = {F057DA7F-79E5-4B00-845C-EF446EF055E3}\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56} = {1C320193-46A6-4B34-9C56-8AB584FC1B56}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2} = {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0} = {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9} = {DEB01ACB-D65F-4A62-AED9-58C1054499E9}\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5} = {B5A00BFA-6083-4FAE-A097-71642D6473B5}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download CELT", "libs\win32\Download CELT.vcproj", "{FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libcelt", "libs\win32\celt\libcelt.vcproj", "{ABB71A76-42B0-47A4-973A-42E3D920C6FD}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19} = {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_celt", "src\mod\codecs\mod_celt\mod_celt.vcproj", "{4D418176-3B33-47E6-A63E-01BA34ADD21C}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD} = {ABB71A76-42B0-47A4-973A-42E3D920C6FD}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FSComm", "fscomm\FSComm.2008.vcproj", "{7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_curl", "src\mod\applications\mod_curl\mod_curl.2008.vcproj", "{EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A} = {9778F1C0-09BC-4698-8EBC-BD982247209A}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download JSON", "libs\win32\Download JSON.2008.vcproj", "{B808178B-82F0-4CF4-A2B1-921939FA24D0}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjson", "libs\win32\json\libjson.2008.vcproj", "{9778F1C0-09BC-4698-8EBC-BD982247209A}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0} = {B808178B-82F0-4CF4-A2B1-921939FA24D0}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_silk", "src\mod\codecs\mod_silk\mod_silk.2008.vcproj", "{AFA983D6-4569-4F88-BA94-555ED00FD9A8}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76} = {56B91D01-9150-4BBF-AFA1-5B68AB991B76}\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Silk_FIX", "libs\silk\src\Silk_FIX.2008.vcproj", "{56B91D01-9150-4BBF-AFA1-5B68AB991B76}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_avmd", "src\mod\applications\mod_avmd\mod_avmd.2008.vcproj", "{990BAA76-89D3-4E38-8479-C7B28784EFC8}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spandsp", "src\mod\applications\mod_spandsp\mod_spandsp.2008.vcproj", "{1E21AFE0-6FDB-41D2-942D-863607C24B91}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5} = {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_hash", "src\mod\applications\mod_hash\mod_hash.2008.vcproj", "{2E250296-0C08-4342-9C8A-BCBDD0E7DF65}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E} = {CF405366-9558-4AE8-90EF-5E21B51CCB4E}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download OPENSSL", "libs\win32\Download OPENSSL.2008.vcproj", "{D578E676-7EC8-4548-BD8B-845C635F14AD}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "openssl", "openssl", "{B376D494-D7DD-4B2A-99E2-52916D5A8CD8}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libeay32", "libs\win32\openssl\libeay32.2008.vcproj", "{D331904D-A00A-4694-A5A3-FCFF64AB5DBE}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD} = {D578E676-7EC8-4548-BD8B-845C635F14AD}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssleay32", "libs\win32\openssl\ssleay32.2008.vcproj", "{B4B62169-5AD4-4559-8707-3D933AC5DB39}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "openssl", "libs\win32\openssl\openssl.2008.vcproj", "{25BD39B1-C8BF-4676-A738-9CABD9C6BC79}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {B4B62169-5AD4-4559-8707-3D933AC5DB39}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_directory", "src\mod\applications\mod_directory\mod_directory.2008.vcproj", "{42E721FD-43D6-4B04-A34B-42567199FFB8}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ldns", "libs\win32\ldns\ldns-lib\ldns-lib.2008.vcproj", "{23B4D303-79FC-49E0-89E2-2280E7E28940}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_httapi", "src\mod\applications\mod_httapi\mod_httapi.2008.vcproj", "{0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_abstraction", "src\mod\applications\mod_abstraction\mod_abstraction.2008.vcproj", "{BDA173DB-F8EF-4270-9553-B453AF92E43A}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_gsmopen", "src\mod\endpoints\mod_gsmopen\mod_gsmopen.2008.vcproj", "{74B120FF-6935-4DFE-A142-CDB6BEA99C90}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53} = {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gsmlib", "src\mod\endpoints\mod_gsmopen\gsmlib\gsmlib-1.10-patched-13ubuntu\win32\gsmlib.vcproj", "{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjpeg", "libs\win32\libjpeg\libjpeg.2008.vcproj", "{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {21A7DA70-555E-49FA-942B-D84A38B61243} = {21A7DA70-555E-49FA-942B-D84A38B61243}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download libjpeg", "libs\win32\Download libjpeg.2008.vcproj", "{21A7DA70-555E-49FA-942B-D84A38B61243}"\r
--EndProject\r
--Global\r
-- GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
-- All|Win32 = All|Win32\r
-- All|x64 = All|x64\r
-- Debug|Win32 = Debug|Win32\r
-- Debug|x64 = Debug|x64\r
-- Release|Win32 = Release|Win32\r
-- Release|x64 = Release|x64\r
-- EndGlobalSection\r
-- GlobalSection(ProjectConfigurationPlatforms) = postSolution\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|Win32.ActiveCfg = Release|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64.ActiveCfg = Release|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64.Build.0 = Release|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x64.Build.0 = Debug|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|Win32.Build.0 = Release|Win32\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|x64.ActiveCfg = Release|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|x64.Build.0 = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|Win32.ActiveCfg = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64.ActiveCfg = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64.Build.0 = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|Win32.Build.0 = Debug|Win32\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x64.ActiveCfg = Debug|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x64.Build.0 = Debug|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|Win32.ActiveCfg = Release|Win32\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|Win32.Build.0 = Release|Win32\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|x64.ActiveCfg = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|x64.Build.0 = Release|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|Win32.ActiveCfg = Release Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64.ActiveCfg = Release Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64.Build.0 = Release Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|Win32.ActiveCfg = Debug Passthrough|Win32\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|Win32.Build.0 = Debug Passthrough|Win32\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x64.ActiveCfg = Debug Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x64.Build.0 = Debug Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|Win32.ActiveCfg = Release Passthrough|Win32\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|Win32.Build.0 = Release Passthrough|Win32\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|x64.ActiveCfg = Release Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|x64.Build.0 = Release Passthrough|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|Win32.ActiveCfg = Release|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64.ActiveCfg = Release|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64.Build.0 = Release|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|Win32.Build.0 = Debug|Win32\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x64.ActiveCfg = Debug|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x64.Build.0 = Debug|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|Win32.ActiveCfg = Release|Win32\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|Win32.Build.0 = Release|Win32\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|x64.ActiveCfg = Release|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|x64.Build.0 = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|Win32.ActiveCfg = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64.ActiveCfg = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64.Build.0 = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|Win32.Build.0 = Debug|Win32\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x64.ActiveCfg = Debug|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x64.Build.0 = Debug|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|Win32.ActiveCfg = Release|Win32\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|Win32.Build.0 = Release|Win32\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|x64.ActiveCfg = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|x64.Build.0 = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|Win32.ActiveCfg = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x64.ActiveCfg = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x64.Build.0 = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|Win32.Build.0 = Debug|Win32\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|x64.ActiveCfg = Debug|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|x64.Build.0 = Debug|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|Win32.ActiveCfg = Release|Win32\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|Win32.Build.0 = Release|Win32\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|x64.ActiveCfg = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|x64.Build.0 = Release|x64\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|Win32.ActiveCfg = Release|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|x64.ActiveCfg = Release|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release|x64.ActiveCfg = Release|Win32\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|Win32.ActiveCfg = Release|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64.ActiveCfg = Release|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64.Build.0 = Release|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|Win32.Build.0 = Debug|Win32\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x64.ActiveCfg = Debug|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x64.Build.0 = Debug|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|Win32.ActiveCfg = Release|Win32\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|Win32.Build.0 = Release|Win32\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|x64.ActiveCfg = Release|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|x64.Build.0 = Release|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|Win32.ActiveCfg = Release MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64.ActiveCfg = Release MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64.Build.0 = Release MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|Win32.ActiveCfg = Debug MS-LDAP|Win32\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|Win32.Build.0 = Debug MS-LDAP|Win32\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x64.ActiveCfg = Debug MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x64.Build.0 = Debug MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|Win32.ActiveCfg = Release MS-LDAP|Win32\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|Win32.Build.0 = Release MS-LDAP|Win32\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|x64.ActiveCfg = Release MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|x64.Build.0 = Release MS-LDAP|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|Win32.ActiveCfg = Release|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64.ActiveCfg = Release|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64.Build.0 = Release|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|Win32.Build.0 = Debug|Win32\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x64.ActiveCfg = Debug|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x64.Build.0 = Debug|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|Win32.ActiveCfg = Release|Win32\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|Win32.Build.0 = Release|Win32\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|x64.ActiveCfg = Release|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|x64.Build.0 = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.All|Win32.ActiveCfg = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64.ActiveCfg = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64.Build.0 = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|Win32.Build.0 = Debug|Win32\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x64.ActiveCfg = Debug|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x64.Build.0 = Debug|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|Win32.ActiveCfg = Release|Win32\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|Win32.Build.0 = Release|Win32\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|x64.ActiveCfg = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|x64.Build.0 = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.All|Win32.ActiveCfg = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64.ActiveCfg = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64.Build.0 = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|Win32.Build.0 = Debug|Win32\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x64.ActiveCfg = Debug|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x64.Build.0 = Debug|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|Win32.ActiveCfg = Release|Win32\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|Win32.Build.0 = Release|Win32\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|x64.ActiveCfg = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|x64.Build.0 = Release|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|Win32.ActiveCfg = Release|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x64.ActiveCfg = Release|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x64.Build.0 = Release|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|Win32.Build.0 = Release|Win32\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|x64.ActiveCfg = Release|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.All|Win32.ActiveCfg = Release|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64.ActiveCfg = Release|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64.Build.0 = Release|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|x64.ActiveCfg = Debug|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.Release|x64.ActiveCfg = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|Win32.ActiveCfg = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64.ActiveCfg = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64.Build.0 = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x64.Build.0 = Debug|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|Win32.Build.0 = Release|Win32\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|x64.ActiveCfg = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|x64.Build.0 = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|Win32.ActiveCfg = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64.ActiveCfg = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64.Build.0 = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|Win32.Build.0 = Debug|Win32\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x64.ActiveCfg = Debug|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x64.Build.0 = Debug|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|Win32.ActiveCfg = Release|Win32\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|Win32.Build.0 = Release|Win32\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|x64.ActiveCfg = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|x64.Build.0 = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|Win32.ActiveCfg = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64.ActiveCfg = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64.Build.0 = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|Win32.Build.0 = Debug|Win32\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x64.ActiveCfg = Debug|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x64.Build.0 = Debug|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|Win32.ActiveCfg = Release|Win32\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|Win32.Build.0 = Release|Win32\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|x64.ActiveCfg = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|x64.Build.0 = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.All|Win32.ActiveCfg = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64.ActiveCfg = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64.Build.0 = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x64.Build.0 = Debug|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Release|Win32.Build.0 = Release|Win32\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Release|x64.ActiveCfg = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Release|x64.Build.0 = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|Win32.ActiveCfg = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64.ActiveCfg = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64.Build.0 = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|Win32.Build.0 = Debug|Win32\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x64.ActiveCfg = Debug|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x64.Build.0 = Debug|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|Win32.ActiveCfg = Release|Win32\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|Win32.Build.0 = Release|Win32\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|x64.ActiveCfg = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|x64.Build.0 = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|Win32.ActiveCfg = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64.ActiveCfg = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64.Build.0 = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x64.Build.0 = Debug|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|Win32.Build.0 = Release|Win32\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|x64.ActiveCfg = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|x64.Build.0 = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.All|Win32.ActiveCfg = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64.ActiveCfg = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64.Build.0 = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|Win32.Build.0 = Debug|Win32\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x64.ActiveCfg = Debug|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x64.Build.0 = Debug|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Release|Win32.ActiveCfg = Release|Win32\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Release|Win32.Build.0 = Release|Win32\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Release|x64.ActiveCfg = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Release|x64.Build.0 = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|Win32.ActiveCfg = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64.ActiveCfg = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64.Build.0 = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x64.ActiveCfg = Debug|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x64.Build.0 = Debug|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|Win32.Build.0 = Release|Win32\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|x64.ActiveCfg = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|x64.Build.0 = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.All|Win32.ActiveCfg = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64.ActiveCfg = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64.Build.0 = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|Win32.Build.0 = Debug|Win32\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x64.ActiveCfg = Debug|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x64.Build.0 = Debug|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|Win32.ActiveCfg = Release|Win32\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|Win32.Build.0 = Release|Win32\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|x64.ActiveCfg = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|x64.Build.0 = Release|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.All|Win32.ActiveCfg = Release DLL|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64.ActiveCfg = Release DLL|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64.Build.0 = Release DLL|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x64.Build.0 = Debug|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|Win32.Build.0 = Release|Win32\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|x64.ActiveCfg = Release|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|x64.Build.0 = Release|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|Win32.ActiveCfg = Release Dll|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64.ActiveCfg = Release Dll|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64.Build.0 = Release Dll|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|Win32.Build.0 = Debug|Win32\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x64.ActiveCfg = Debug|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x64.Build.0 = Debug|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|Win32.ActiveCfg = Release|Win32\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|Win32.Build.0 = Release|Win32\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|x64.ActiveCfg = Release|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|x64.Build.0 = Release|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|Win32.ActiveCfg = Release DLL|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64.ActiveCfg = Release DLL|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64.Build.0 = Release DLL|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|Win32.Build.0 = Debug|Win32\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x64.ActiveCfg = Debug|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x64.Build.0 = Debug|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|Win32.ActiveCfg = Release|Win32\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|Win32.Build.0 = Release|Win32\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|x64.ActiveCfg = Release|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|x64.Build.0 = Release|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|Win32.ActiveCfg = Release DLL|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64.ActiveCfg = Release DLL|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64.Build.0 = Release DLL|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|Win32.Build.0 = Debug|Win32\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x64.ActiveCfg = Debug|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x64.Build.0 = Debug|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|Win32.ActiveCfg = Release|Win32\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|Win32.Build.0 = Release|Win32\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|x64.ActiveCfg = Release|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|x64.Build.0 = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|Win32.ActiveCfg = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x64.ActiveCfg = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x64.Build.0 = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|x64.Build.0 = Debug|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|Win32.Build.0 = Release|Win32\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|x64.ActiveCfg = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|x64.Build.0 = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|Win32.ActiveCfg = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64.ActiveCfg = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64.Build.0 = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|Win32.Build.0 = Debug|Win32\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x64.ActiveCfg = Debug|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x64.Build.0 = Debug|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|Win32.ActiveCfg = Release|Win32\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|Win32.Build.0 = Release|Win32\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|x64.ActiveCfg = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|x64.Build.0 = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|Win32.ActiveCfg = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64.ActiveCfg = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64.Build.0 = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|Win32.Build.0 = Debug|Win32\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x64.ActiveCfg = Debug|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x64.Build.0 = Debug|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|Win32.ActiveCfg = Release|Win32\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|Win32.Build.0 = Release|Win32\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|x64.ActiveCfg = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|x64.Build.0 = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|Win32.ActiveCfg = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64.ActiveCfg = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64.Build.0 = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|Win32.Build.0 = Debug|Win32\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x64.ActiveCfg = Debug|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x64.Build.0 = Debug|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|Win32.Build.0 = Release|Win32\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|x64.ActiveCfg = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|x64.Build.0 = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|Win32.ActiveCfg = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64.ActiveCfg = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64.Build.0 = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x64.Build.0 = Debug|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|Win32.Build.0 = Release|Win32\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|x64.ActiveCfg = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|x64.Build.0 = Release|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|Win32.ActiveCfg = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64.ActiveCfg = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64.Build.0 = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|Win32.Build.0 = Debug|Win32\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x64.ActiveCfg = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x64.Build.0 = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|Win32.ActiveCfg = Release|Win32\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|Win32.Build.0 = Release|Win32\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|x64.ActiveCfg = Release|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|x64.Build.0 = Release|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|Win32.ActiveCfg = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64.ActiveCfg = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64.Build.0 = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|Win32.Build.0 = Debug|Win32\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x64.ActiveCfg = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x64.Build.0 = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|Win32.Build.0 = Release|Win32\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|x64.ActiveCfg = Release|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|x64.Build.0 = Release|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|Win32.ActiveCfg = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x64.ActiveCfg = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x64.Build.0 = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|Win32.Build.0 = Debug|Win32\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|x64.ActiveCfg = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|x64.Build.0 = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|Win32.ActiveCfg = Release|Win32\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|Win32.Build.0 = Release|Win32\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|x64.ActiveCfg = Release|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|x64.Build.0 = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|Win32.ActiveCfg = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64.ActiveCfg = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64.Build.0 = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x64.Build.0 = Debug|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|Win32.Build.0 = Release|Win32\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|x64.ActiveCfg = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|x64.Build.0 = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|Win32.ActiveCfg = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64.ActiveCfg = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64.Build.0 = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|Win32.Build.0 = Debug|Win32\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x64.ActiveCfg = Debug|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x64.Build.0 = Debug|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|Win32.ActiveCfg = Release|Win32\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|Win32.Build.0 = Release|Win32\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|x64.ActiveCfg = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|x64.Build.0 = Release|x64\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|Win32.ActiveCfg = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|Win32.Build.0 = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64.ActiveCfg = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64.Build.0 = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x64.Build.0 = Debug|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|Win32.Build.0 = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|x64.ActiveCfg = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|x64.Build.0 = Release|Win32\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|Win32.ActiveCfg = Release DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64.ActiveCfg = Release DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64.Build.0 = Release DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|Win32.ActiveCfg = Debug DLL|Win32\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|Win32.Build.0 = Debug DLL|Win32\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x64.ActiveCfg = Debug DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x64.Build.0 = Debug DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|Win32.ActiveCfg = Release DLL|Win32\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|Win32.Build.0 = Release DLL|Win32\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|x64.ActiveCfg = Release DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|x64.Build.0 = Release DLL|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|Win32.ActiveCfg = Release Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64.ActiveCfg = Release Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64.Build.0 = Release Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|Win32.ActiveCfg = Debug Passthrough|Win32\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|Win32.Build.0 = Debug Passthrough|Win32\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x64.ActiveCfg = Debug Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x64.Build.0 = Debug Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|Win32.ActiveCfg = Release Passthrough|Win32\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|Win32.Build.0 = Release Passthrough|Win32\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|x64.ActiveCfg = Release Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|x64.Build.0 = Release Passthrough|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|Win32.ActiveCfg = Release|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64.ActiveCfg = Release|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64.Build.0 = Release|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|Win32.Build.0 = Debug|Win32\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x64.ActiveCfg = Debug|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x64.Build.0 = Debug|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|Win32.ActiveCfg = Release|Win32\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|Win32.Build.0 = Release|Win32\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|x64.ActiveCfg = Release|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|x64.Build.0 = Release|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|Win32.ActiveCfg = Release|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x64.ActiveCfg = Release|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x64.Build.0 = Release|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|Win32.Build.0 = Debug|Win32\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|x64.ActiveCfg = Debug|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|Win32.ActiveCfg = Release|Win32\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|Win32.Build.0 = Release|Win32\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|x64.ActiveCfg = Release|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|Win32.ActiveCfg = Release|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x64.ActiveCfg = Release|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x64.Build.0 = Release|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|Win32.Build.0 = Debug|Win32\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|x64.ActiveCfg = Debug|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|Win32.ActiveCfg = Release|Win32\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|Win32.Build.0 = Release|Win32\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|x64.ActiveCfg = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|Win32.ActiveCfg = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64.ActiveCfg = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64.Build.0 = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|Win32.Build.0 = Debug|Win32\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x64.ActiveCfg = Debug|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x64.Build.0 = Debug|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|Win32.ActiveCfg = Release|Win32\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|Win32.Build.0 = Release|Win32\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|x64.ActiveCfg = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|x64.Build.0 = Release|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|Win32.ActiveCfg = Release|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x64.ActiveCfg = Release|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x64.Build.0 = Release|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|Win32.Build.0 = Release|Win32\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|x64.ActiveCfg = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|Win32.ActiveCfg = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64.ActiveCfg = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64.Build.0 = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x64.Build.0 = Debug|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|Win32.Build.0 = Release|Win32\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|x64.ActiveCfg = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|x64.Build.0 = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|Win32.ActiveCfg = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64.ActiveCfg = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64.Build.0 = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|Win32.Build.0 = Debug|Win32\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x64.ActiveCfg = Debug|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x64.Build.0 = Debug|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|Win32.ActiveCfg = Release|Win32\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|Win32.Build.0 = Release|Win32\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x64.ActiveCfg = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x64.Build.0 = Release|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|Win32.ActiveCfg = Release DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64.ActiveCfg = Release DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64.Build.0 = Release DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x64.Build.0 = Debug|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|Win32.Build.0 = Release|Win32\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64.ActiveCfg = Release|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64.Build.0 = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|Win32.ActiveCfg = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64.ActiveCfg = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64.Build.0 = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|Win32.Build.0 = Debug|Win32\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x64.ActiveCfg = Debug|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x64.Build.0 = Debug|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|Win32.ActiveCfg = Release|Win32\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|Win32.Build.0 = Release|Win32\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|x64.ActiveCfg = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|x64.Build.0 = Release|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|Win32.ActiveCfg = Release Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64.ActiveCfg = Release Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64.Build.0 = Release Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|Win32.ActiveCfg = Debug Passthrough|Win32\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|Win32.Build.0 = Debug Passthrough|Win32\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x64.ActiveCfg = Debug Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x64.Build.0 = Debug Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|Win32.ActiveCfg = Release Passthrough|Win32\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|Win32.Build.0 = Release Passthrough|Win32\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|x64.ActiveCfg = Release Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|x64.Build.0 = Release Passthrough|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|Win32.ActiveCfg = Release|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64.ActiveCfg = Release|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64.Build.0 = Release|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x64.ActiveCfg = Debug|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x64.Build.0 = Debug|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|Win32.Build.0 = Release|Win32\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|x64.ActiveCfg = Release|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|x64.Build.0 = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|Win32.ActiveCfg = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64.ActiveCfg = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64.Build.0 = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|Win32.Build.0 = Debug|Win32\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x64.ActiveCfg = Debug|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x64.Build.0 = Debug|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|Win32.ActiveCfg = Release|Win32\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|Win32.Build.0 = Release|Win32\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|x64.ActiveCfg = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|x64.Build.0 = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|Win32.ActiveCfg = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64.ActiveCfg = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64.Build.0 = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x64.ActiveCfg = Debug|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x64.Build.0 = Debug|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|Win32.Build.0 = Release|Win32\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|x64.ActiveCfg = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|x64.Build.0 = Release|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.All|Win32.ActiveCfg = Release|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x64.ActiveCfg = Release|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x64.Build.0 = Release|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|Win32.Build.0 = Debug|Win32\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|x64.ActiveCfg = Debug|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|Win32.ActiveCfg = Release|Win32\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|Win32.Build.0 = Release|Win32\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|x64.ActiveCfg = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|Win32.ActiveCfg = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64.ActiveCfg = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64.Build.0 = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x64.Build.0 = Debug|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|Win32.Build.0 = Release|Win32\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|x64.ActiveCfg = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|x64.Build.0 = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|Win32.ActiveCfg = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64.ActiveCfg = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64.Build.0 = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x64.ActiveCfg = Debug|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x64.Build.0 = Debug|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|Win32.Build.0 = Release|Win32\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|x64.ActiveCfg = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|x64.Build.0 = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|Win32.ActiveCfg = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64.ActiveCfg = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64.Build.0 = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x64.Build.0 = Debug|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|Win32.Build.0 = Release|Win32\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|x64.ActiveCfg = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|x64.Build.0 = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|Win32.ActiveCfg = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64.ActiveCfg = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64.Build.0 = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|Win32.Build.0 = Debug|Win32\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x64.ActiveCfg = Debug|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x64.Build.0 = Debug|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|Win32.ActiveCfg = Release|Win32\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|Win32.Build.0 = Release|Win32\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|x64.ActiveCfg = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|x64.Build.0 = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|Win32.ActiveCfg = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64.ActiveCfg = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64.Build.0 = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|Win32.Build.0 = Debug|Win32\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x64.ActiveCfg = Debug|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x64.Build.0 = Debug|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|Win32.ActiveCfg = Release|Win32\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|Win32.Build.0 = Release|Win32\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|x64.ActiveCfg = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|x64.Build.0 = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|Win32.ActiveCfg = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64.ActiveCfg = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64.Build.0 = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|Win32.Build.0 = Debug|Win32\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x64.ActiveCfg = Debug|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x64.Build.0 = Debug|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|Win32.ActiveCfg = Release|Win32\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|Win32.Build.0 = Release|Win32\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|x64.ActiveCfg = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|x64.Build.0 = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|Win32.ActiveCfg = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64.ActiveCfg = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64.Build.0 = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x64.ActiveCfg = Debug|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x64.Build.0 = Debug|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|Win32.Build.0 = Release|Win32\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|x64.ActiveCfg = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|x64.Build.0 = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.All|Win32.ActiveCfg = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.All|x64.ActiveCfg = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.All|x64.Build.0 = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Debug|Win32.Build.0 = Debug|Win32\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x64.ActiveCfg = Debug|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x64.Build.0 = Debug|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Release|Win32.ActiveCfg = Release|Win32\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Release|Win32.Build.0 = Release|Win32\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Release|x64.ActiveCfg = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Release|x64.Build.0 = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|Win32.ActiveCfg = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64.ActiveCfg = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64.Build.0 = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x64.Build.0 = Debug|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|Win32.Build.0 = Release|Win32\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|x64.ActiveCfg = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|x64.Build.0 = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|Win32.ActiveCfg = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64.ActiveCfg = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64.Build.0 = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|Win32.Build.0 = Debug|Win32\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x64.ActiveCfg = Debug|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x64.Build.0 = Debug|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|Win32.Build.0 = Release|Win32\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|x64.ActiveCfg = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|x64.Build.0 = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|Win32.ActiveCfg = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64.ActiveCfg = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64.Build.0 = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x64.Build.0 = Debug|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|Win32.Build.0 = Release|Win32\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|x64.ActiveCfg = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|x64.Build.0 = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|Win32.ActiveCfg = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64.ActiveCfg = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64.Build.0 = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|Win32.Build.0 = Debug|Win32\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x64.ActiveCfg = Debug|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x64.Build.0 = Debug|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|Win32.Build.0 = Release|Win32\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|x64.ActiveCfg = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|x64.Build.0 = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|Win32.ActiveCfg = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64.ActiveCfg = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64.Build.0 = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|Win32.Build.0 = Debug|Win32\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x64.ActiveCfg = Debug|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x64.Build.0 = Debug|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|Win32.ActiveCfg = Release|Win32\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|Win32.Build.0 = Release|Win32\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|x64.ActiveCfg = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|x64.Build.0 = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|Win32.ActiveCfg = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64.ActiveCfg = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64.Build.0 = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|Win32.Build.0 = Debug|Win32\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x64.ActiveCfg = Debug|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x64.Build.0 = Debug|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|Win32.Build.0 = Release|Win32\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|x64.ActiveCfg = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|x64.Build.0 = Release|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|Win32.ActiveCfg = Release|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x64.ActiveCfg = Release|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x64.Build.0 = Release|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|Win32.Build.0 = Debug|Win32\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|x64.ActiveCfg = Debug|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|Win32.ActiveCfg = Release|Win32\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|Win32.Build.0 = Release|Win32\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|x64.ActiveCfg = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|Win32.ActiveCfg = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64.ActiveCfg = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64.Build.0 = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|Win32.Build.0 = Debug|Win32\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x64.ActiveCfg = Debug|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x64.Build.0 = Debug|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|Win32.ActiveCfg = Release|Win32\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|Win32.Build.0 = Release|Win32\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64.ActiveCfg = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64.Build.0 = Release|x64\r
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download sphinxbase", "libs\win32\Download sphinxbase.2008.vcproj", "{4F92B672-DADB-4047-8D6A-4BB3796733FD}"\r
+ EndProject\r
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download sphinxmodel", "libs\win32\Download sphinxmodel.2008.vcproj", "{2DEE4895-1134-439C-B688-52203E57D878}"\r
+@@ -968,6 +960,21 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjpeg", "libs\win32\libjp
+ EndProject\r
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download libjpeg", "libs\win32\Download libjpeg.2008.vcproj", "{21A7DA70-555E-49FA-942B-D84A38B61243}"\r
+ EndProject\r
++Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "xmlrpc-c", "xmlrpc-c", "{3783935D-7C0A-4166-A376-C3D8E64F3A9C}"\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "abyss", "libs\win32\xmlrpc-c\abyss.2008.vcproj", "{A4D67895-E709-40C7-82B6-DE1D12DDDE04}"\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gennmtab", "libs\win32\xmlrpc-c\gennmtab.2008.vcproj", "{2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888} = {E5A9BCDA-B82D-4B08-B23E-9A782E367888}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmlparse", "libs\win32\xmlrpc-c\xmlparse.2008.vcproj", "{E5A9BCDA-B82D-4B08-B23E-9A782E367888}"\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmlrpc", "libs\win32\xmlrpc-c\xmlrpc.2008.vcproj", "{510BDAA8-C04D-47DB-8482-E6AF380D3E07}"\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmltok", "libs\win32\xmlrpc-c\xmltok.2008.vcproj", "{3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}"\r
++EndProject\r
+ Global\r
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
+ All|Win32 = All|Win32\r
+@@ -1728,50 +1735,6 @@ Global
+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|Win32.Build.0 = Release|Win32\r
+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64.ActiveCfg = Release|x64\r
+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64.Build.0 = Release|x64\r
- {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|Win32.ActiveCfg = Release|x64\r
- {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x64.ActiveCfg = Release|x64\r
- {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x64.Build.0 = Release|x64\r
- {B535402E-38D2-4D54-8360-423ACBD17192}.Release|Win32.Build.0 = Release|Win32\r
- {B535402E-38D2-4D54-8360-423ACBD17192}.Release|x64.ActiveCfg = Release|x64\r
- {B535402E-38D2-4D54-8360-423ACBD17192}.Release|x64.Build.0 = Release|x64\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|Win32.ActiveCfg = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|Win32.Build.0 = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64.ActiveCfg = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64.Build.0 = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x64.Build.0 = Debug|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|Win32.Build.0 = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|x64.ActiveCfg = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|x64.Build.0 = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.All|Win32.ActiveCfg = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.All|Win32.Build.0 = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.All|x64.ActiveCfg = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.All|x64.Build.0 = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x64.Build.0 = Debug|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Release|Win32.Build.0 = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Release|x64.ActiveCfg = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Release|x64.Build.0 = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|Win32.ActiveCfg = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|Win32.Build.0 = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64.ActiveCfg = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64.Build.0 = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|Win32.Build.0 = Debug|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x64.Build.0 = Debug|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|Win32.Build.0 = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|x64.ActiveCfg = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|x64.Build.0 = Release|Win32\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|Win32.ActiveCfg = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64.ActiveCfg = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64.Build.0 = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x64.ActiveCfg = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x64.Build.0 = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|Win32.Build.0 = Release|Win32\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|x64.ActiveCfg = Release|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|x64.Build.0 = Release|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.All|Win32.ActiveCfg = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.All|x64.ActiveCfg = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.All|x64.Build.0 = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Debug|Win32.Build.0 = Debug|Win32\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x64.ActiveCfg = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x64.Build.0 = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Release|Win32.ActiveCfg = Release|Win32\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Release|Win32.Build.0 = Release|Win32\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Release|x64.ActiveCfg = Release|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Release|x64.Build.0 = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|Win32.ActiveCfg = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x64.ActiveCfg = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x64.Build.0 = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|x64.ActiveCfg = Debug|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|x64.Build.0 = Debug|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|Win32.Build.0 = Release|Win32\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|x64.ActiveCfg = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|x64.Build.0 = Release|x64\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|Win32.ActiveCfg = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|Win32.Build.0 = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64.ActiveCfg = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64.Build.0 = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|Win32.Build.0 = Debug|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x64.Build.0 = Debug|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|Win32.ActiveCfg = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|Win32.Build.0 = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|x64.ActiveCfg = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|x64.Build.0 = Release|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|Win32.ActiveCfg = Release|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|x64.ActiveCfg = Release|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release|Win32.ActiveCfg = Release|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release|x64.ActiveCfg = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|Win32.ActiveCfg = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|Win32.Build.0 = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64.ActiveCfg = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64.Build.0 = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x64.Build.0 = Debug|x64\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|Win32.Build.0 = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|x64.ActiveCfg = Release|x64\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|x64.Build.0 = Release|x64\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.All|Win32.ActiveCfg = Release|Win32\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.All|x64.ActiveCfg = Release|Win32\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.Release|x64.ActiveCfg = Release|x64\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|Win32.ActiveCfg = Release|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|x64.ActiveCfg = Release|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release|x64.ActiveCfg = Release|Win32\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.All|Win32.ActiveCfg = Release|Win32\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.All|x64.ActiveCfg = Release|Win32\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|x64.ActiveCfg = Debug|x64\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.Release|Win32.ActiveCfg = Release|Win32\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.Release|x64.ActiveCfg = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.All|Win32.ActiveCfg = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64.ActiveCfg = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64.Build.0 = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x64.Build.0 = Debug|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Release|Win32.Build.0 = Release|Win32\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Release|x64.ActiveCfg = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Release|x64.Build.0 = Release|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|Win32.ActiveCfg = Release Static|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64.ActiveCfg = Release Static|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64.Build.0 = Release Static|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x64.ActiveCfg = Debug|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|Win32.ActiveCfg = Release|Win32\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x64.ActiveCfg = Release|x64\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x64.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x64.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x64.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x64.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|x64.Build.0 = Release|Win32\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|Win32.ActiveCfg = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64.ActiveCfg = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64.Build.0 = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|Win32.Build.0 = Debug|Win32\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x64.ActiveCfg = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x64.Build.0 = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|Win32.Build.0 = Release|Win32\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|x64.ActiveCfg = Release|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|x64.Build.0 = Release|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|Win32.ActiveCfg = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64.ActiveCfg = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64.Build.0 = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x64.Build.0 = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|Win32.Build.0 = Release|Win32\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|x64.ActiveCfg = Release|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|x64.Build.0 = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.All|Win32.ActiveCfg = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64.ActiveCfg = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64.Build.0 = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|Win32.Build.0 = Debug|Win32\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x64.ActiveCfg = Debug|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x64.Build.0 = Debug|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|Win32.ActiveCfg = Release|Win32\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|Win32.Build.0 = Release|Win32\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|x64.ActiveCfg = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|x64.Build.0 = Release|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|Win32.ActiveCfg = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64.ActiveCfg = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64.Build.0 = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x64.Build.0 = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|Win32.Build.0 = Release|Win32\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|x64.ActiveCfg = Release|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|x64.Build.0 = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|Win32.ActiveCfg = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64.ActiveCfg = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64.Build.0 = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x64.ActiveCfg = Debug|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x64.Build.0 = Debug|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|Win32.Build.0 = Release|Win32\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|x64.ActiveCfg = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|x64.Build.0 = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|Win32.ActiveCfg = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64.ActiveCfg = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64.Build.0 = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x64.ActiveCfg = Debug|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x64.Build.0 = Debug|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|Win32.Build.0 = Release|Win32\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|x64.ActiveCfg = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|x64.Build.0 = Release|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|Win32.ActiveCfg = Release_Mono|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64.ActiveCfg = Release_Mono|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64.Build.0 = Release_Mono|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|Win32.ActiveCfg = Debug_CLR|Win32\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|Win32.Build.0 = Debug_CLR|Win32\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x64.ActiveCfg = Debug_CLR|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x64.Build.0 = Debug_CLR|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|Win32.ActiveCfg = Release_CLR|Win32\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|Win32.Build.0 = Release_CLR|Win32\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|x64.ActiveCfg = Release_CLR|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|x64.Build.0 = Release_CLR|x64\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.All|Win32.ActiveCfg = Release|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.All|x64.ActiveCfg = Release|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|Win32.ActiveCfg = Debug|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|Win32.Build.0 = Debug|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|x64.ActiveCfg = Debug|x64\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|x64.Build.0 = Debug|x64\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|Win32.ActiveCfg = Release|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|Win32.Build.0 = Release|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|x64.ActiveCfg = Release|x64\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|x64.Build.0 = Release|x64\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.All|Win32.ActiveCfg = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.All|Win32.Build.0 = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.All|x64.ActiveCfg = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.All|x64.Build.0 = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Debug|Win32.Build.0 = Debug|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x64.Build.0 = Debug|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Release|Win32.Build.0 = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Release|x64.ActiveCfg = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Release|x64.Build.0 = Release|Win32\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.All|Win32.ActiveCfg = Release|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64.ActiveCfg = Release|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64.Build.0 = Release|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|Win32.Build.0 = Debug|Win32\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x64.ActiveCfg = Debug|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x64.Build.0 = Debug|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Release|Win32.ActiveCfg = Release|Win32\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Release|Win32.Build.0 = Release|Win32\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Release|x64.ActiveCfg = Release|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Release|x64.Build.0 = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|Win32.ActiveCfg = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64.ActiveCfg = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64.Build.0 = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x64.ActiveCfg = Debug|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x64.Build.0 = Debug|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|Win32.Build.0 = Release|Win32\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|x64.ActiveCfg = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|x64.Build.0 = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|Win32.ActiveCfg = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64.ActiveCfg = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64.Build.0 = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|Win32.Build.0 = Debug|Win32\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x64.ActiveCfg = Debug|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x64.Build.0 = Debug|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|Win32.ActiveCfg = Release|Win32\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|Win32.Build.0 = Release|Win32\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|x64.ActiveCfg = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|x64.Build.0 = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|Win32.ActiveCfg = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64.ActiveCfg = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64.Build.0 = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x64.Build.0 = Debug|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|Win32.Build.0 = Release|Win32\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|x64.ActiveCfg = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|x64.Build.0 = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.All|Win32.ActiveCfg = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64.ActiveCfg = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64.Build.0 = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x64.Build.0 = Debug|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|Win32.Build.0 = Release|Win32\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|x64.ActiveCfg = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|x64.Build.0 = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|Win32.ActiveCfg = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64.ActiveCfg = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64.Build.0 = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|Win32.Build.0 = Debug|Win32\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x64.ActiveCfg = Debug|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x64.Build.0 = Debug|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|Win32.Build.0 = Release|Win32\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|x64.ActiveCfg = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|x64.Build.0 = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|Win32.ActiveCfg = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64.ActiveCfg = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64.Build.0 = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x64.Build.0 = Debug|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|Win32.Build.0 = Release|Win32\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|x64.ActiveCfg = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|x64.Build.0 = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|Win32.ActiveCfg = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64.ActiveCfg = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64.Build.0 = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|Win32.Build.0 = Debug|Win32\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x64.ActiveCfg = Debug|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x64.Build.0 = Debug|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|Win32.ActiveCfg = Release|Win32\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|Win32.Build.0 = Release|Win32\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|x64.ActiveCfg = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|x64.Build.0 = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|Win32.ActiveCfg = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64.ActiveCfg = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64.Build.0 = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x64.Build.0 = Debug|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|Win32.Build.0 = Release|Win32\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x64.ActiveCfg = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x64.Build.0 = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|Win32.ActiveCfg = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x64.ActiveCfg = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x64.Build.0 = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.Build.0 = Debug|Win32\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x64.ActiveCfg = Debug|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x64.Build.0 = Debug|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|Win32.ActiveCfg = Release|Win32\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|Win32.Build.0 = Release|Win32\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x64.ActiveCfg = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x64.Build.0 = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|Win32.ActiveCfg = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64.ActiveCfg = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64.Build.0 = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64.Build.0 = Debug|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|Win32.Build.0 = Release|Win32\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x64.ActiveCfg = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x64.Build.0 = Release|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|Win32.ActiveCfg = Release_WM5_PPC_ARM|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x64.ActiveCfg = Release_WM5_PPC_ARM|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x64.Build.0 = Release_WM5_PPC_ARM|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|x64.Build.0 = Debug|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|Win32.Build.0 = Release|Win32\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|x64.ActiveCfg = Release|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|x64.Build.0 = Release|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|Win32.ActiveCfg = Release_Static_SSE|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x64.ActiveCfg = Release_Static_SSE|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x64.Build.0 = Release_Static_SSE|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|x64.ActiveCfg = Debug|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|x64.Build.0 = Debug|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|Win32.Build.0 = Release|Win32\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x64.ActiveCfg = Release|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x64.Build.0 = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|Win32.ActiveCfg = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64.ActiveCfg = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64.Build.0 = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64.ActiveCfg = Debug|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64.Build.0 = Debug|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|Win32.Build.0 = Release|Win32\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x64.ActiveCfg = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x64.Build.0 = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.All|Win32.ActiveCfg = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64.ActiveCfg = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64.Build.0 = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x64.Build.0 = Debug|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Release|Win32.Build.0 = Release|Win32\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Release|x64.ActiveCfg = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Release|x64.Build.0 = Release|x64\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|Win32.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|Win32.Build.0 = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|x64.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release|Win32.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release|x64.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|Win32.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|Win32.Build.0 = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|x64.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.Debug|x64.ActiveCfg = Debug|x64\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.Release|Win32.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.Release|x64.ActiveCfg = Release|Win32\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|Win32.ActiveCfg = All|Win32\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|Win32.Build.0 = All|Win32\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x64.ActiveCfg = All|Win32\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x64.ActiveCfg = Debug|x64\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x64.ActiveCfg = Release|x64\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|Win32.ActiveCfg = Release|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|x64.ActiveCfg = Release|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x64.ActiveCfg = Debug|x64\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|Win32.ActiveCfg = Release|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x64.ActiveCfg = Release|x64\r
-- {48414740-C693-4968-9846-EE058020C64F}.All|Win32.ActiveCfg = Release|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.All|x64.ActiveCfg = Release|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.Debug|x64.ActiveCfg = Debug|x64\r
-- {48414740-C693-4968-9846-EE058020C64F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.Release|x64.ActiveCfg = Release|x64\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|Win32.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|Win32.Build.0 = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|x64.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|Win32.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|Win32.Build.0 = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x64.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x64.Build.0 = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|Win32.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|Win32.Build.0 = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|x64.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|x64.Build.0 = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|Win32.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|Win32.Build.0 = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|x64.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|Win32.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|Win32.Build.0 = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x64.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x64.Build.0 = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|Win32.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|Win32.Build.0 = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|x64.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|x64.Build.0 = All|Win32\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|Win32.ActiveCfg = Release|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64.ActiveCfg = Release|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64.Build.0 = Release|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|x64.ActiveCfg = Debug|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release|Win32.ActiveCfg = Release|Win32\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release|x64.ActiveCfg = Release|x64\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|Win32.ActiveCfg = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|Win32.Build.0 = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|x64.ActiveCfg = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x64.ActiveCfg = Release|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.All|Win32.ActiveCfg = Release|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.All|x64.ActiveCfg = Release|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.Release|x64.ActiveCfg = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|Win32.ActiveCfg = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|Win32.Build.0 = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64.ActiveCfg = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64.Build.0 = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|Win32.Build.0 = Debug|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x64.Build.0 = Debug|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|Win32.ActiveCfg = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|Win32.Build.0 = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|x64.ActiveCfg = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|x64.Build.0 = Release|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|Win32.ActiveCfg = Release|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|x64.ActiveCfg = Release|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release|x64.ActiveCfg = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|Win32.ActiveCfg = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|Win32.Build.0 = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64.ActiveCfg = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64.Build.0 = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x64.Build.0 = Debug|x64\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|Win32.Build.0 = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|x64.ActiveCfg = Release|x64\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|x64.Build.0 = Release|x64\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|Win32.ActiveCfg = Release|Win32\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|x64.ActiveCfg = Release|Win32\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|x64.ActiveCfg = Debug|x64\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release|Win32.ActiveCfg = Release|Win32\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release|x64.ActiveCfg = Release|x64\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|Win32.ActiveCfg = Release|Win32\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|x64.ActiveCfg = Release|Win32\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|x64.ActiveCfg = Debug|x64\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release|Win32.ActiveCfg = Release|Win32\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release|x64.ActiveCfg = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|Win32.ActiveCfg = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64.ActiveCfg = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64.Build.0 = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|Win32.Build.0 = Debug|Win32\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x64.ActiveCfg = Debug|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x64.Build.0 = Debug|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|Win32.Build.0 = Release|Win32\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|x64.ActiveCfg = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|x64.Build.0 = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|Win32.ActiveCfg = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|Win32.Build.0 = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64.ActiveCfg = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64.Build.0 = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x64.Build.0 = Debug|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|Win32.Build.0 = Release|Win32\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|x64.ActiveCfg = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|x64.Build.0 = Release|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|Win32.ActiveCfg = Release|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|x64.ActiveCfg = Release|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x64.Build.0 = Debug|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|Win32.Build.0 = Release|Win32\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|x64.ActiveCfg = Release|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|x64.Build.0 = Release|x64\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|Win32.ActiveCfg = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|Win32.Build.0 = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|x64.ActiveCfg = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|Win32.Build.0 = Debug|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x64.ActiveCfg = Debug|x64\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x64.Build.0 = Debug|x64\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|Win32.ActiveCfg = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|Win32.Build.0 = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|x64.ActiveCfg = Release|x64\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|x64.Build.0 = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|Win32.ActiveCfg = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64.ActiveCfg = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64.Build.0 = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x64.Build.0 = Debug|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|Win32.Build.0 = Release|Win32\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|x64.ActiveCfg = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|x64.Build.0 = Release|x64\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|Win32.ActiveCfg = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|Win32.Build.0 = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|x64.ActiveCfg = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|Win32.Build.0 = Debug|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x64.ActiveCfg = Debug|x64\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x64.Build.0 = Debug|x64\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|Win32.ActiveCfg = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|Win32.Build.0 = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|x64.ActiveCfg = Release|x64\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|x64.Build.0 = Release|x64\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|Win32.ActiveCfg = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|Win32.Build.0 = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|x64.ActiveCfg = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x64.ActiveCfg = Debug|x64\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x64.Build.0 = Debug|x64\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|Win32.Build.0 = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|x64.ActiveCfg = Release|x64\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|x64.Build.0 = Release|x64\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|Win32.ActiveCfg = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|Win32.Build.0 = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|x64.ActiveCfg = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x64.Build.0 = Debug|x64\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|Win32.Build.0 = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|x64.ActiveCfg = Release|x64\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|x64.Build.0 = Release|x64\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|Win32.ActiveCfg = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|Win32.Build.0 = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|x64.ActiveCfg = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|Win32.Build.0 = Debug|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x64.ActiveCfg = Debug|x64\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x64.Build.0 = Debug|x64\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|Win32.ActiveCfg = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|Win32.Build.0 = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|x64.ActiveCfg = Release|x64\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|x64.Build.0 = Release|x64\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|Win32.ActiveCfg = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|Win32.Build.0 = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|x64.ActiveCfg = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|Win32.Build.0 = Debug|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x64.ActiveCfg = Debug|x64\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x64.Build.0 = Debug|x64\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|Win32.ActiveCfg = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|Win32.Build.0 = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|x64.ActiveCfg = Release|x64\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|x64.Build.0 = Release|x64\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|Win32.ActiveCfg = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|Win32.Build.0 = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|x64.ActiveCfg = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|Win32.Build.0 = Debug|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x64.ActiveCfg = Debug|x64\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x64.Build.0 = Debug|x64\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|Win32.ActiveCfg = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|Win32.Build.0 = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|x64.ActiveCfg = Release|x64\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|x64.Build.0 = Release|x64\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.All|Win32.ActiveCfg = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.All|Win32.Build.0 = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.All|x64.ActiveCfg = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|Win32.Build.0 = Debug|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x64.ActiveCfg = Debug|x64\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x64.Build.0 = Debug|x64\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|Win32.Build.0 = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|x64.ActiveCfg = Release|x64\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|x64.Build.0 = Release|x64\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|Win32.ActiveCfg = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|Win32.Build.0 = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|x64.ActiveCfg = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|Win32.Build.0 = Debug|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x64.ActiveCfg = Debug|x64\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x64.Build.0 = Debug|x64\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|Win32.Build.0 = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|x64.ActiveCfg = Release|x64\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|x64.Build.0 = Release|x64\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|Win32.ActiveCfg = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|Win32.Build.0 = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|x64.ActiveCfg = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|Win32.Build.0 = Debug|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x64.ActiveCfg = Debug|x64\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x64.Build.0 = Debug|x64\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|Win32.ActiveCfg = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|Win32.Build.0 = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|x64.ActiveCfg = Release|x64\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|x64.Build.0 = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|Win32.ActiveCfg = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x64.ActiveCfg = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x64.Build.0 = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|x64.Build.0 = Debug|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|Win32.Build.0 = Release|Win32\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|x64.ActiveCfg = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|x64.Build.0 = Release|x64\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|Win32.ActiveCfg = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|Win32.Build.0 = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|x64.ActiveCfg = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|Win32.Build.0 = Debug|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x64.Build.0 = Debug|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|Win32.ActiveCfg = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|Win32.Build.0 = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|x64.ActiveCfg = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|x64.Build.0 = Release|Win32\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|Win32.ActiveCfg = Release|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64.ActiveCfg = Release|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64.Build.0 = Release|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x64.ActiveCfg = Debug|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x64.Build.0 = Debug|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|Win32.Build.0 = Release|Win32\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|x64.ActiveCfg = Release|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|x64.Build.0 = Release|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|Win32.ActiveCfg = Release Passthrough|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64.ActiveCfg = Release Passthrough|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64.Build.0 = Release Passthrough|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|Win32.Build.0 = Debug|Win32\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x64.ActiveCfg = Debug|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x64.Build.0 = Debug|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|Win32.ActiveCfg = Release|Win32\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|Win32.Build.0 = Release|Win32\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|x64.ActiveCfg = Release|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|x64.Build.0 = Release|x64\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|Win32.ActiveCfg = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|Win32.Build.0 = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|x64.ActiveCfg = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release|x64.ActiveCfg = Release|Win32\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|Win32.ActiveCfg = Release|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64.ActiveCfg = Release|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64.Build.0 = Release|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|Win32.Build.0 = Debug|Win32\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x64.ActiveCfg = Debug|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x64.Build.0 = Debug|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|Win32.ActiveCfg = Release|Win32\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|Win32.Build.0 = Release|Win32\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|x64.ActiveCfg = Release|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|x64.Build.0 = Release|x64\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|Win32.ActiveCfg = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|Win32.Build.0 = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|x64.ActiveCfg = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x64.Build.0 = Debug|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|Win32.Build.0 = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|x64.ActiveCfg = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|x64.Build.0 = Release|Win32\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|Win32.ActiveCfg = Release|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64.ActiveCfg = Release|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64.Build.0 = Release|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x64.Build.0 = Debug|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|Win32.Build.0 = Release|Win32\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|x64.ActiveCfg = Release|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|x64.Build.0 = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|Win32.ActiveCfg = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64.ActiveCfg = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64.Build.0 = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|Win32.Build.0 = Debug|Win32\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x64.ActiveCfg = Debug|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x64.Build.0 = Debug|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|Win32.ActiveCfg = Release|Win32\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|Win32.Build.0 = Release|Win32\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|x64.ActiveCfg = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|x64.Build.0 = Release|x64\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|Win32.ActiveCfg = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|Win32.Build.0 = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|x64.ActiveCfg = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|Win32.Build.0 = Debug|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x64.ActiveCfg = Debug|x64\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x64.Build.0 = Debug|x64\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|Win32.ActiveCfg = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|Win32.Build.0 = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|x64.ActiveCfg = Release|x64\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|x64.Build.0 = Release|x64\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|Win32.ActiveCfg = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|Win32.Build.0 = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|x64.ActiveCfg = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|Win32.Build.0 = Debug|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x64.ActiveCfg = Debug|x64\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x64.Build.0 = Debug|x64\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|Win32.ActiveCfg = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|Win32.Build.0 = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|x64.ActiveCfg = Release|x64\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|x64.Build.0 = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|Win32.ActiveCfg = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64.ActiveCfg = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64.Build.0 = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x64.Build.0 = Debug|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|Win32.Build.0 = Release|Win32\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|x64.ActiveCfg = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|x64.Build.0 = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|Win32.ActiveCfg = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64.ActiveCfg = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64.Build.0 = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x64.ActiveCfg = Debug|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x64.Build.0 = Debug|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|Win32.Build.0 = Release|Win32\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|x64.ActiveCfg = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|x64.Build.0 = Release|x64\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|Win32.ActiveCfg = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|Win32.Build.0 = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|x64.ActiveCfg = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|x64.Build.0 = Debug|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|Win32.Build.0 = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|x64.ActiveCfg = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|x64.Build.0 = Release|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|Win32.ActiveCfg = Release|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|Win32.Build.0 = Release|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|x64.ActiveCfg = Release|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|x64.Build.0 = Debug|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|Win32.Build.0 = Release|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|x64.ActiveCfg = Release|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|x64.Build.0 = Release|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|Win32.ActiveCfg = Release|Win32\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|Win32.Build.0 = Release|Win32\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|x64.ActiveCfg = Release|Win32\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|x64.ActiveCfg = Debug|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|x64.Build.0 = Debug|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|Win32.Build.0 = Release|Win32\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|x64.ActiveCfg = Release|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|x64.Build.0 = Release|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|Win32.ActiveCfg = Release|Win32\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|Win32.Build.0 = Release|Win32\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|x64.ActiveCfg = Release|Win32\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|Win32.Build.0 = Debug|Win32\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|x64.ActiveCfg = Debug|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|x64.Build.0 = Debug|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|Win32.ActiveCfg = Release|Win32\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|Win32.Build.0 = Release|Win32\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|x64.ActiveCfg = Release|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|x64.Build.0 = Release|x64\r
-- {42E721FD-43D6-4B04-A34B-42567199FFB8}.All|Win32.ActiveCfg = Release|x64\r
-- {42E721FD-43D6-4B04-A34B-42567199FFB8}.All|x64.ActiveCfg = Release|x64\r
-- {42E721FD-43D6-4B04-A34B-42567199FFB8}.All|x64.Build.0 = Release|x64\r
-- {42E721FD-43D6-4B04-A34B-42567199FFB8}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {42E721FD-43D6-4B04-A34B-42567199FFB8}.Debug|x64.ActiveCfg = Debug|x64\r
-- {42E721FD-43D6-4B04-A34B-42567199FFB8}.Release|Win32.ActiveCfg = Release|Win32\r
-- {42E721FD-43D6-4B04-A34B-42567199FFB8}.Release|x64.ActiveCfg = Release|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|Win32.ActiveCfg = Release|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x64.ActiveCfg = Release|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x64.Build.0 = Release|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|Win32.Build.0 = Debug|Win32\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|x64.ActiveCfg = Debug|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|x64.Build.0 = Debug|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|Win32.ActiveCfg = Release|Win32\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|Win32.Build.0 = Release|Win32\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64.ActiveCfg = Release|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64.Build.0 = Release|x64\r
-- {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.All|Win32.ActiveCfg = Release|x64\r
-- {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.All|x64.ActiveCfg = Release|x64\r
-- {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.All|x64.Build.0 = Release|x64\r
-- {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Debug|x64.Build.0 = Debug|x64\r
-- {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Release|Win32.Build.0 = Release|Win32\r
-- {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Release|x64.ActiveCfg = Release|x64\r
-- {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Release|x64.Build.0 = Release|x64\r
-- {BDA173DB-F8EF-4270-9553-B453AF92E43A}.All|Win32.ActiveCfg = Release|x64\r
-- {BDA173DB-F8EF-4270-9553-B453AF92E43A}.All|x64.ActiveCfg = Release|x64\r
-- {BDA173DB-F8EF-4270-9553-B453AF92E43A}.All|x64.Build.0 = Release|x64\r
-- {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Debug|x64.Build.0 = Debug|x64\r
-- {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Release|Win32.Build.0 = Release|Win32\r
-- {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Release|x64.ActiveCfg = Release|x64\r
-- {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Release|x64.Build.0 = Release|x64\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|Win32.ActiveCfg = Release|Win32\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|Win32.Build.0 = Release|Win32\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x64.ActiveCfg = Release|Win32\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|x64.ActiveCfg = Debug|x64\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|Win32.ActiveCfg = Release|Win32\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|x64.ActiveCfg = Release|x64\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|Win32.ActiveCfg = Debug|Win32\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|Win32.Build.0 = Debug|Win32\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x64.ActiveCfg = Debug|Win32\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|x64.ActiveCfg = Debug|x64\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|Win32.ActiveCfg = Release|Win32\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|x64.ActiveCfg = Release|x64\r
-- {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.All|Win32.ActiveCfg = Debug|x64\r
-- {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.All|x64.ActiveCfg = Debug|x64\r
-- {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.All|x64.Build.0 = Debug|x64\r
-- {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|x64.Build.0 = Debug|x64\r
-- {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|Win32.Build.0 = Release|Win32\r
-- {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|x64.ActiveCfg = Release|x64\r
-- {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|x64.Build.0 = Release|x64\r
-- {21A7DA70-555E-49FA-942B-D84A38B61243}.All|Win32.ActiveCfg = Release|Win32\r
-- {21A7DA70-555E-49FA-942B-D84A38B61243}.All|Win32.Build.0 = Release|Win32\r
-- {21A7DA70-555E-49FA-942B-D84A38B61243}.All|x64.ActiveCfg = Release|Win32\r
-- {21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|Win32.Build.0 = Debug|Win32\r
-- {21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|x64.Build.0 = Debug|Win32\r
-- {21A7DA70-555E-49FA-942B-D84A38B61243}.Release|Win32.ActiveCfg = Release|Win32\r
-- {21A7DA70-555E-49FA-942B-D84A38B61243}.Release|Win32.Build.0 = Release|Win32\r
-- {21A7DA70-555E-49FA-942B-D84A38B61243}.Release|x64.ActiveCfg = Release|Win32\r
-- {21A7DA70-555E-49FA-942B-D84A38B61243}.Release|x64.Build.0 = Release|Win32\r
-- EndGlobalSection\r
-- GlobalSection(SolutionProperties) = preSolution\r
-- HideSolutionNode = FALSE\r
-- EndGlobalSection\r
-- GlobalSection(NestedProjects) = preSolution\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {48414740-C693-4968-9846-EE058020C64F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {C24FB505-05D7-4319-8485-7540B44C8603} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {F6A33240-8F29-48BD-98F0-826995911799} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {42E721FD-43D6-4B04-A34B-42567199FFB8} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {BDA173DB-F8EF-4270-9553-B453AF92E43A} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6} = {A5A27244-AD24-46E5-B01B-840CD296C91D}\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7} = {A5A27244-AD24-46E5-B01B-840CD296C91D}\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B} = {A5A27244-AD24-46E5-B01B-840CD296C91D}\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52} = {A5A27244-AD24-46E5-B01B-840CD296C91D}\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692} = {A5A27244-AD24-46E5-B01B-840CD296C91D}\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723} = {CBD81696-EFB4-4D2F-8451-1B8DAA86155A}\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98} = {B8F5B47B-8568-46EB-B320-64C17D2A98BC}\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}\r
-- {1C453396-D912-4213-89FD-9B489162B7B5} = {A7AB4405-FDB7-4853-9FBB-1516B1C3D80A}\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909} = {A7AB4405-FDB7-4853-9FBB-1516B1C3D80A}\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950} = {F69A4A6B-9360-4EBB-A280-22AA3C455AC5}\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4} = {F69A4A6B-9360-4EBB-A280-22AA3C455AC5}\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836} = {F69A4A6B-9360-4EBB-A280-22AA3C455AC5}\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|Win32.ActiveCfg = Release|Win32\r
+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|Win32.Build.0 = Release|Win32\r
+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64.ActiveCfg = Release|Win32\r
+@@ -2749,6 +2712,61 @@ Global
+ {21A7DA70-555E-49FA-942B-D84A38B61243}.Release|Win32.Build.0 = Release|Win32\r
+ {21A7DA70-555E-49FA-942B-D84A38B61243}.Release|x64.ActiveCfg = Release|Win32\r
+ {21A7DA70-555E-49FA-942B-D84A38B61243}.Release|x64.Build.0 = Release|Win32\r
++ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.All|Win32.ActiveCfg = Release|x64\r
++ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.All|x64.ActiveCfg = Release|x64\r
++ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.All|x64.Build.0 = Release|x64\r
++ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Debug|Win32.Build.0 = Debug|Win32\r
++ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Debug|x64.ActiveCfg = Debug|x64\r
++ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Debug|x64.Build.0 = Debug|x64\r
++ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Release|Win32.ActiveCfg = Release|Win32\r
++ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Release|Win32.Build.0 = Release|Win32\r
++ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Release|x64.ActiveCfg = Release|x64\r
++ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Release|x64.Build.0 = Release|x64\r
++ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.All|Win32.ActiveCfg = Release|x64\r
++ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.All|x64.ActiveCfg = Release|x64\r
++ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.All|x64.Build.0 = Release|x64\r
++ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Debug|Win32.Build.0 = Debug|Win32\r
++ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Debug|x64.ActiveCfg = Debug|x64\r
++ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Debug|x64.Build.0 = Debug|x64\r
++ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Release|Win32.ActiveCfg = Release|Win32\r
++ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Release|Win32.Build.0 = Release|Win32\r
++ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Release|x64.ActiveCfg = Release|x64\r
++ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Release|x64.Build.0 = Release|x64\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.All|Win32.ActiveCfg = Debug|x64\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.All|x64.ActiveCfg = Debug|x64\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.All|x64.Build.0 = Debug|x64\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Debug|Win32.Build.0 = Debug|Win32\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Debug|x64.ActiveCfg = Debug|x64\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Debug|x64.Build.0 = Debug|x64\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Release|Win32.ActiveCfg = Release|Win32\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Release|Win32.Build.0 = Release|Win32\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Release|x64.ActiveCfg = Release|x64\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Release|x64.Build.0 = Release|x64\r
++ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.All|Win32.ActiveCfg = Release|x64\r
++ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.All|x64.ActiveCfg = Release|x64\r
++ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.All|x64.Build.0 = Release|x64\r
++ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Debug|Win32.Build.0 = Debug|Win32\r
++ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Debug|x64.ActiveCfg = Debug|x64\r
++ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Debug|x64.Build.0 = Debug|x64\r
++ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Release|Win32.ActiveCfg = Release|Win32\r
++ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Release|Win32.Build.0 = Release|Win32\r
++ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Release|x64.ActiveCfg = Release|x64\r
++ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Release|x64.Build.0 = Release|x64\r
++ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.All|Win32.ActiveCfg = Release|x64\r
++ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.All|x64.ActiveCfg = Release|x64\r
++ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.All|x64.Build.0 = Release|x64\r
++ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Debug|Win32.Build.0 = Debug|Win32\r
++ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Debug|x64.ActiveCfg = Debug|x64\r
++ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Debug|x64.Build.0 = Debug|x64\r
++ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Release|Win32.ActiveCfg = Release|Win32\r
++ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Release|Win32.Build.0 = Release|Win32\r
++ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Release|x64.ActiveCfg = Release|x64\r
++ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Release|x64.Build.0 = Release|x64\r
+ EndGlobalSection\r
+ GlobalSection(SolutionProperties) = preSolution\r
+ HideSolutionNode = FALSE\r
+@@ -2846,10 +2864,6 @@ Global
+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {0A18A071-125E-442F-AFF7-A3F68ABECF99} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
- {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
- {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
- {0D108721-EAE8-4BAF-8102-D8960EC93647} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
- {B535402E-38D2-4D54-8360-423ACBD17192} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {94001A0E-A837-445C-8004-F918F10D0226} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {0AD1177E-1FD8-4643-9391-431467A11084} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {419C8F80-D858-4B48-A25C-AF4007608137} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {D0B36172-CD76-454A-9B89-990025266C2A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {62F27B1A-C919-4A70-8478-51F178F3B18F} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {B376D494-D7DD-4B2A-99E2-52916D5A8CD8} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {2DEE4895-1134-439C-B688-52203E57D878} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {E796E337-DE78-4303-8614-9A590862EE95} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {21A7DA70-555E-49FA-942B-D84A38B61243} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0} = {57D119DC-484F-420F-B9E9-8589FD9A8DF8}\r
-- {3C90CCF0-2CDD-4A7A-ACFF-208C1E271692} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}\r
-- {C7E2382E-2C22-4D18-BF93-80C6A1FFA7AC} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}\r
-- {FC71C66E-E268-4EAD-B1F5-F008DC382E83} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}\r
-- {8E2E8798-8B6F-4A55-8E4F-4E6FDE40ED26} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}\r
-- {09455AA9-C243-4F16-A1A1-A016881A2765} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}\r
-- {CDE9B06A-3C27-4987-8FAE-DF1006BC705D} = {DB1024A8-41BF-4AD7-9AE6-13202230D1F3}\r
-- {57199684-EC63-4A60-9DC6-11815AF6B413} = {09455AA9-C243-4F16-A1A1-A016881A2765}\r
-- {2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C} = {09455AA9-C243-4F16-A1A1-A016881A2765}\r
-- {D4A12E4C-DBDA-4614-BA26-3425AE9F60F5} = {09455AA9-C243-4F16-A1A1-A016881A2765}\r
-- {765EF1B9-5027-4820-BC37-A44466A51631} = {57199684-EC63-4A60-9DC6-11815AF6B413}\r
-- {713E4747-1126-40B1-BD84-58F9A7745423} = {57199684-EC63-4A60-9DC6-11815AF6B413}\r
-- {D3E5C8ED-3A6A-4FEA-92A2-48A0BA865358} = {2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C}\r
-- {CC3E7F48-2590-49CB-AD8B-BE3650F55462} = {2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C}\r
-- {F1B71990-EB04-4EB5-B28A-BC3EB6F7E843} = {D4A12E4C-DBDA-4614-BA26-3425AE9F60F5}\r
-- {3DAF028C-AB5B-4183-A01B-DCC43F5A87F0} = {D4A12E4C-DBDA-4614-BA26-3425AE9F60F5}\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A} = {4F227C26-768F-46A3-8684-1D08A46FB374}\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A} = {4F227C26-768F-46A3-8684-1D08A46FB374}\r
-- {464AAB78-5489-4916-BE51-BF8D61822311} = {4F227C26-768F-46A3-8684-1D08A46FB374}\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870} = {4F227C26-768F-46A3-8684-1D08A46FB374}\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289} = {4F227C26-768F-46A3-8684-1D08A46FB374}\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959} = {4F227C26-768F-46A3-8684-1D08A46FB374}\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {B376D494-D7DD-4B2A-99E2-52916D5A8CD8}\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {B376D494-D7DD-4B2A-99E2-52916D5A8CD8}\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79} = {B376D494-D7DD-4B2A-99E2-52916D5A8CD8}\r
-- EndGlobalSection\r
--EndGlobal\r
-+
-+Microsoft Visual Studio Solution File, Format Version 10.00
-+# Visual Studio 2008
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Codecs", "Codecs", "{F881ADA2-2F1A-4046-9FEB-191D9422D781}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Endpoints", "Endpoints", "{9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Applications", "Applications", "{E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dialplans", "Dialplans", "{C5F182F9-754A-4EC5-B50F-76ED02BE13F4}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Event Handlers", "Event Handlers", "{9ADF1E48-2F5C-4ED7-A893-596259FABFE0}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Formats", "Formats", "{A5A27244-AD24-46E5-B01B-840CD296C91D}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Docs", "Docs", "{CBD81696-EFB4-4D2F-8451-1B8DAA86155A}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Directories", "Directories", "{B8F5B47B-8568-46EB-B320-64C17D2A98BC}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Languages", "Languages", "{0C808854-54D1-4230-BFF5-77B5FD905000}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ASR-TTS", "ASR-TTS", "{4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Loggers", "Loggers", "{A7AB4405-FDB7-4853-9FBB-1516B1C3D80A}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XML Interfaces", "XML Interfaces", "{F69A4A6B-9360-4EBB-A280-22AA3C455AC5}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Libraries", "_Libraries", "{EB910B0D-F27D-4B62-B67B-DE834C99AC5B}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Downloads", "_Downloads", "{C120A020-773F-4EA3-923F-B67AF28B750D}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "say", "say", "{6CD61A1D-797C-470A-BE08-8C31B68BB336}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Config", "_Config", "{57D119DC-484F-420F-B9E9-8589FD9A8DF8}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Default", "Default", "{3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\freeswitch.xml = conf\vanilla\freeswitch.xml
-+ conf\vanilla\vars.xml = conf\vanilla\vars.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Build System", "_Build System", "{DB1024A8-41BF-4AD7-9AE6-13202230D1F3}"
-+ ProjectSection(SolutionItems) = preProject
-+ acsite.m4 = acsite.m4
-+ bootstrap.sh = bootstrap.sh
-+ build\buildlib.sh = build\buildlib.sh
-+ configure.in = configure.in
-+ Makefile.am = Makefile.am
-+ build\modmake.rules.in = build\modmake.rules.in
-+ build\modules.conf.in = build\modules.conf.in
-+ libs\win32\util.vbs = libs\win32\util.vbs
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "m4", "m4", "{CDE9B06A-3C27-4987-8FAE-DF1006BC705D}"
-+ ProjectSection(SolutionItems) = preProject
-+ build\config\ac_cflags_gcc_option.m4 = build\config\ac_cflags_gcc_option.m4
-+ build\config\ac_cflags_sun_option.m4 = build\config\ac_cflags_sun_option.m4
-+ build\config\ac_gcc_archflag.m4 = build\config\ac_gcc_archflag.m4
-+ build\config\ac_gcc_x86_cpuid.m4 = build\config\ac_gcc_x86_cpuid.m4
-+ build\config\ac_prog_gzip.m4 = build\config\ac_prog_gzip.m4
-+ build\config\ac_prog_wget.m4 = build\config\ac_prog_wget.m4
-+ build\config\ax_cc_maxopt.m4 = build\config\ax_cc_maxopt.m4
-+ build\config\ax_cflags_warn_all_ansi.m4 = build\config\ax_cflags_warn_all_ansi.m4
-+ build\config\ax_check_compiler_flags.m4 = build\config\ax_check_compiler_flags.m4
-+ build\config\ax_compiler_vendor.m4 = build\config\ax_compiler_vendor.m4
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "autoload_configs", "autoload_configs", "{3C90CCF0-2CDD-4A7A-ACFF-208C1E271692}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\autoload_configs\alsa.conf.xml = conf\vanilla\autoload_configs\alsa.conf.xml
-+ conf\vanilla\autoload_configs\conference.conf.xml = conf\vanilla\autoload_configs\conference.conf.xml
-+ conf\vanilla\autoload_configs\console.conf.xml = conf\vanilla\autoload_configs\console.conf.xml
-+ conf\vanilla\autoload_configs\dialplan_directory.conf.xml = conf\vanilla\autoload_configs\dialplan_directory.conf.xml
-+ conf\vanilla\autoload_configs\dingaling.conf.xml = conf\vanilla\autoload_configs\dingaling.conf.xml
-+ conf\vanilla\autoload_configs\enum.conf.xml = conf\vanilla\autoload_configs\enum.conf.xml
-+ conf\vanilla\autoload_configs\event_multicast.conf.xml = conf\vanilla\autoload_configs\event_multicast.conf.xml
-+ conf\vanilla\autoload_configs\event_socket.conf.xml = conf\vanilla\autoload_configs\event_socket.conf.xml
-+ conf\vanilla\autoload_configs\ivr.conf.xml = conf\vanilla\autoload_configs\ivr.conf.xml
-+ conf\vanilla\autoload_configs\java.conf.xml = conf\vanilla\autoload_configs\java.conf.xml
-+ conf\vanilla\autoload_configs\limit.conf.xml = conf\vanilla\autoload_configs\limit.conf.xml
-+ conf\vanilla\autoload_configs\local_stream.conf.xml = conf\vanilla\autoload_configs\local_stream.conf.xml
-+ conf\vanilla\autoload_configs\logfile.conf.xml = conf\vanilla\autoload_configs\logfile.conf.xml
-+ conf\vanilla\autoload_configs\modules.conf.xml = conf\vanilla\autoload_configs\modules.conf.xml
-+ conf\vanilla\autoload_configs\openmrcp.conf.xml = conf\vanilla\autoload_configs\openmrcp.conf.xml
-+ conf\vanilla\autoload_configs\portaudio.conf.xml = conf\vanilla\autoload_configs\portaudio.conf.xml
-+ conf\vanilla\autoload_configs\rss.conf.xml = conf\vanilla\autoload_configs\rss.conf.xml
-+ conf\vanilla\autoload_configs\sofia.conf.xml = conf\vanilla\autoload_configs\sofia.conf.xml
-+ conf\vanilla\autoload_configs\spidermonkey.conf.xml = conf\vanilla\autoload_configs\spidermonkey.conf.xml
-+ conf\vanilla\autoload_configs\switch.conf.xml = conf\vanilla\autoload_configs\switch.conf.xml
-+ conf\vanilla\autoload_configs\syslog.conf.xml = conf\vanilla\autoload_configs\syslog.conf.xml
-+ conf\vanilla\autoload_configs\voicemail.conf.xml = conf\vanilla\autoload_configs\voicemail.conf.xml
-+ conf\vanilla\autoload_configs\wanpipe.conf.xml = conf\vanilla\autoload_configs\wanpipe.conf.xml
-+ conf\vanilla\autoload_configs\woomera.conf.xml = conf\vanilla\autoload_configs\woomera.conf.xml
-+ conf\vanilla\autoload_configs\xml_cdr.conf.xml = conf\vanilla\autoload_configs\xml_cdr.conf.xml
-+ conf\vanilla\autoload_configs\xml_curl.conf.xml = conf\vanilla\autoload_configs\xml_curl.conf.xml
-+ conf\vanilla\autoload_configs\xml_rpc.conf.xml = conf\vanilla\autoload_configs\xml_rpc.conf.xml
-+ conf\vanilla\autoload_configs\zeroconf.conf.xml = conf\vanilla\autoload_configs\zeroconf.conf.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "dialplan", "dialplan", "{C7E2382E-2C22-4D18-BF93-80C6A1FFA7AC}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\dialplan\default.xml = conf\vanilla\dialplan\default.xml
-+ conf\vanilla\dialplan\public.xml = conf\vanilla\dialplan\public.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "directory", "directory", "{FC71C66E-E268-4EAD-B1F5-F008DC382E83}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\directory\default.xml = conf\vanilla\directory\default.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "sip_profiles", "sip_profiles", "{8E2E8798-8B6F-4A55-8E4F-4E6FDE40ED26}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\sip_profiles\external.xml = conf\vanilla\sip_profiles\external.xml
-+ conf\vanilla\sip_profiles\internal.xml = conf\vanilla\sip_profiles\internal.xml
-+ conf\vanilla\sip_profiles\nat.xml = conf\vanilla\sip_profiles\nat.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "lang", "lang", "{09455AA9-C243-4F16-A1A1-A016881A2765}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\directory\default.xml = conf\vanilla\directory\default.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "en", "en", "{57199684-EC63-4A60-9DC6-11815AF6B413}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\en\en.xml = conf\vanilla\lang\en\en.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "de", "de", "{2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\de\de.xml = conf\vanilla\lang\de\de.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "fr", "fr", "{D4A12E4C-DBDA-4614-BA26-3425AE9F60F5}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\fr\fr.xml = conf\vanilla\lang\fr\fr.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "demo", "demo", "{D3E5C8ED-3A6A-4FEA-92A2-48A0BA865358}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\de\demo\demo.xml = conf\vanilla\lang\de\demo\demo.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "vm", "vm", "{CC3E7F48-2590-49CB-AD8B-BE3650F55462}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\de\vm\tts.xml = conf\vanilla\lang\de\vm\tts.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "demo", "demo", "{765EF1B9-5027-4820-BC37-A44466A51631}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\en\demo\demo.xml = conf\vanilla\lang\en\demo\demo.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "vm", "vm", "{713E4747-1126-40B1-BD84-58F9A7745423}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\en\vm\sounds.xml = conf\vanilla\lang\en\vm\sounds.xml
-+ conf\vanilla\lang\en\vm\tts.xml = conf\vanilla\lang\en\vm\tts.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "demo", "demo", "{F1B71990-EB04-4EB5-B28A-BC3EB6F7E843}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\fr\demo\demo.xml = conf\vanilla\lang\fr\demo\demo.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "vm", "vm", "{3DAF028C-AB5B-4183-A01B-DCC43F5A87F0}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\fr\vm\sounds.xml = conf\vanilla\lang\fr\vm\sounds.xml
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FreeSwitchConsole", "w32\Console\FreeSwitchConsole.2008.vcproj", "{1AF3A893-F7BE-43DD-B697-8AB2397C0D67}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FreeSwitchCoreLib", "w32\Library\FreeSwitchCore.2008.vcproj", "{202D7A4E-760D-4D0E-AFA1-D7459CED30FF}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9} = {8D04B550-D240-4A44-8A18-35DA3F7038D9}
-+ {89385C74-5860-4174-9CAF-A39E7C48909C} = {89385C74-5860-4174-9CAF-A39E7C48909C}
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5} = {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3} = {F057DA7F-79E5-4B00-845C-EF446EF055E3}
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD} = {03207781-0D1C-4DB3-A71D-45C608F28DBD}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750} = {EEF031CB-FED8-451E-A471-91EC8D4F6750}
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3} = {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_g729", "src\mod\codecs\mod_g729\mod_g729.2008.vcproj", "{1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_sndfile", "src\mod\formats\mod_sndfile\mod_sndfile.2008.vcproj", "{AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4} = {3D0370CA-BED2-4657-A475-32375CBCB6E4}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_PortAudio", "src\mod\endpoints\mod_portaudio\mod_PortAudio.2008.vcproj", "{5FD31A25-5D83-4794-8BEE-904DAD84CE71}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99} = {0A18A071-125E-442F-AFF7-A3F68ABECF99}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_speex", "src\mod\codecs\mod_speex\mod_speex.2008.vcproj", "{5580D60E-0F77-4716-9CD4-B8E5986FA375}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4} = {E972C52F-9E85-4D65-B19C-031E511E9DB4}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD} = {03207781-0D1C-4DB3-A71D-45C608F28DBD}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "docs", "docs\docs.2008.vcproj", "{1A1FF289-4FD6-4285-A422-D31DD67A4723}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dialplan_xml", "src\mod\dialplans\mod_dialplan_xml\mod_dialplan_xml.2008.vcproj", "{07113B25-D3AF-4E04-BA77-4CD1171F022C}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_ldap", "src\mod\directories\mod_ldap\mod_ldap.2008.vcproj", "{EC3E5C7F-EE09-47E2-80FE-546363D14A98}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dialplan_directory", "src\mod\dialplans\mod_dialplan_directory\mod_dialplan_directory.2008.vcproj", "{A27CCA23-1541-4337-81A4-F0A6413078A0}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_event_multicast", "src\mod\event_handlers\mod_event_multicast\mod_event_multicast.2008.vcproj", "{784113EF-44D9-4949-835D-7065D3C7AD08}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libteletone", "libs\libteletone\libteletone.2008.vcproj", "{89385C74-5860-4174-9CAF-A39E7C48909C}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey", "src\mod\languages\mod_spidermonkey\mod_spidermonkey.2008.vcproj", "{1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D} = {204FA0DE-305D-4414-AE2E-F195A23F390D}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_cepstral", "src\mod\asr_tts\mod_cepstral\mod_cepstral.2008.vcproj", "{692F6330-4D87-4C82-81DF-40DB5892636E}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_ilbc", "src\mod\codecs\mod_ilbc\mod_ilbc.2008.vcproj", "{D3EC0AFF-76FC-4210-A825-9A17410660A3}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD} = {9A5DDF08-C88C-4A35-B7F6-D605228446BD}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dingaling", "src\mod\endpoints\mod_dingaling\mod_dingaling.2008.vcproj", "{FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {1906D736-08BD-4EE1-924F-B536249B9A54} = {1906D736-08BD-4EE1-924F-B536249B9A54}
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {B4B62169-5AD4-4559-8707-3D933AC5DB39}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3} = {E727E8F6-935D-46FE-8B0E-37834748A0E3}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_commands", "src\mod\applications\mod_commands\mod_commands.2008.vcproj", "{30A5B29C-983E-4580-9FD0-D647CCDCC7EB}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_console", "src\mod\loggers\mod_console\mod_console.2008.vcproj", "{1C453396-D912-4213-89FD-9B489162B7B5}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_rpc", "src\mod\xml_int\mod_xml_rpc\mod_xml_rpc.2008.vcproj", "{CBEC7225-0C21-4DA8-978E-1F158F8AD950}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B} = {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}
-+ {A4D67895-E709-40C7-82B6-DE1D12DDDE04} = {A4D67895-E709-40C7-82B6-DE1D12DDDE04}
-+ {510BDAA8-C04D-47DB-8482-E6AF380D3E07} = {510BDAA8-C04D-47DB-8482-E6AF380D3E07}
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888} = {E5A9BCDA-B82D-4B08-B23E-9A782E367888}
-+ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268} = {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_rss", "src\mod\applications\mod_rss\mod_rss.2008.vcproj", "{B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_conference", "src\mod\applications\mod_conference\mod_conference.2008.vcproj", "{C24FB505-05D7-4319-8485-7540B44C8603}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dptools", "src\mod\applications\mod_dptools\mod_dptools.2008.vcproj", "{B5881A85-FE70-4F64-8607-2CAAE52669C6}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_event_socket", "src\mod\event_handlers\mod_event_socket\mod_event_socket.2008.vcproj", "{05515420-16DE-4E63-BE73-85BE85BA5142}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libdingaling", "libs\libdingaling\libdingaling.2008.vcproj", "{1906D736-08BD-4EE1-924F-B536249B9A54}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3} = {F057DA7F-79E5-4B00-845C-EF446EF055E3}
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3} = {E727E8F6-935D-46FE-8B0E-37834748A0E3}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsrtp", "libs\srtp\libsrtp.2008.vcproj", "{EEF031CB-FED8-451E-A471-91EC8D4F6750}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsqlite", "libs\win32\sqlite\sqlite.2008.vcproj", "{6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpcre", "libs\win32\pcre\libpcre.2008.vcproj", "{8D04B550-D240-4A44-8A18-35DA3F7038D9}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94} = {1CED5987-A529-46DC-B30F-870D85FF9C94}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpcre Generate pcre_chartables.c", "libs\win32\pcre\pcre_chartables.c.2008.vcproj", "{1CED5987-A529-46DC-B30F-870D85FF9C94}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libapr", "libs\win32\apr\libapr.2008.vcproj", "{F6C55D93-B927-4483-BB69-15AEF3DD2DFF}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libaprutil", "libs\win32\apr-util\libaprutil.2008.vcproj", "{F057DA7F-79E5-4B00-845C-EF446EF055E3}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F} = {155844C3-EC5F-407F-97A4-A2DDADED9B2F}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "iksemel", "libs\win32\iksemel\iksemel.2008.vcproj", "{E727E8F6-935D-46FE-8B0E-37834748A0E3}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsndfile", "libs\win32\libsndfile\libsndfile.2008.vcproj", "{3D0370CA-BED2-4657-A475-32375CBCB6E4}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curllib", "libs\win32\curl\curllib.2008.vcproj", "{87EE9DA4-DE1E-4448-8324-183C98DCA588}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xml", "libs\win32\apr-util\xml.2008.vcproj", "{155844C3-EC5F-407F-97A4-A2DDADED9B2F}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "js", "libs\win32\js\js.2008.vcproj", "{204FA0DE-305D-4414-AE2E-F195A23F390D}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_sofia", "src\mod\endpoints\mod_sofia\mod_sofia.2008.vcproj", "{0DF3ABD0-DDC0-4265-B778-07C66780979B}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4} = {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {B4B62169-5AD4-4559-8707-3D933AC5DB39}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0} = {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsofia_sip_ua_static", "libs\win32\sofia\libsofia_sip_ua_static.2008.vcproj", "{70A49BC2-7500-41D0-B75D-EDCC5BE987A0}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4} = {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A} = {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {B4B62169-5AD4-4559-8707-3D933AC5DB39}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download PTHREAD", "libs\win32\Download PTHREAD.2008.vcproj", "{8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pthread", "libs\win32\pthread\pthread.2008.vcproj", "{DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A} = {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_g723_1", "src\mod\codecs\mod_g723_1\mod_g723_1.2008.vcproj", "{FEA1EEF7-876F-48DE-88BF-C0E3E606D758}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_native_file", "src\mod\formats\mod_native_file\mod_native_file.2008.vcproj", "{9254C4B0-6F60-42B6-BB3A-36D63FC001C7}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_core_db", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_core_db.2008.vcproj", "{ACFFF684-4D19-4D48-AF12-88EA1D778BDF}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D} = {204FA0DE-305D-4414-AE2E-F195A23F390D}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_teletone", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_teletone.2008.vcproj", "{8F992C49-6C51-412F-B2A3-34EAB708EB65}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {89385C74-5860-4174-9CAF-A39E7C48909C} = {89385C74-5860-4174-9CAF-A39E7C48909C}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D} = {204FA0DE-305D-4414-AE2E-F195A23F390D}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_enum", "src\mod\applications\mod_enum\mod_enum.2008.vcproj", "{71A967D5-0E99-4CEF-A587-98836EE6F2EF}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940} = {23B4D303-79FC-49E0-89E2-2280E7E28940}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_odbc", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_odbc.2008.vcproj", "{0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D} = {204FA0DE-305D-4414-AE2E-F195A23F390D}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_curl", "src\mod\xml_int\mod_xml_curl\mod_xml_curl.2008.vcproj", "{AB91A099-7690-4ECF-8994-E458F4EA1ED4}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_en", "src\mod\say\mod_say_en\mod_say_en.2008.vcproj", "{988CACF7-3FCB-4992-BE69-77872AE67DC8}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "portaudio", "libs\portaudio\build\msvc\portaudio.2008.vcproj", "{0A18A071-125E-442F-AFF7-A3F68ABECF99}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_cdr", "src\mod\xml_int\mod_xml_cdr\mod_xml_cdr.2008.vcproj", "{08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_amr", "src\mod\codecs\mod_amr\mod_amr.2008.vcproj", "{8DEB383C-4091-4F42-A56F-C9E46D552D79}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_h26x", "src\mod\codecs\mod_h26x\mod_h26x.2008.vcproj", "{2C3C2423-234B-4772-8899-D3B137E5CA35}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_esf", "src\mod\applications\mod_esf\mod_esf.2008.vcproj", "{3850D93A-5F24-4922-BC1C-74D08C37C256}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_local_stream", "src\mod\formats\mod_local_stream\mod_local_stream.2008.vcproj", "{2CA40887-1622-46A1-A7F9-17FD7E7E545B}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_socket", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_socket.2008.vcproj", "{028C7278-05D7-4E18-82FE-BE231B844F41}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D} = {204FA0DE-305D-4414-AE2E-F195A23F390D}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_voicemail", "src\mod\applications\mod_voicemail\mod_voicemail.2008.vcproj", "{D7F1E3F2-A3F4-474C-8555-15122571AF52}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_de", "src\mod\say\mod_say_de\mod_say_de.2008.vcproj", "{5BC072DB-3826-48EA-AF34-FE32AA01E83B}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_es", "src\mod\say\mod_say_es\mod_say_es.2008.vcproj", "{FA429E98-8B03-45E6-A096-A4BC5E821DE4}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_fr", "src\mod\say\mod_say_fr\mod_say_fr.2008.vcproj", "{06E3A538-AB32-44F2-B477-755FF9CB5D37}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_it", "src\mod\say\mod_say_it\mod_say_it.2008.vcproj", "{6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_nl", "src\mod\say\mod_say_nl\mod_say_nl.2008.vcproj", "{A4B122CF-5196-476B-8C0E-D8BD59AC3C14}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_fifo", "src\mod\applications\mod_fifo\mod_fifo.2008.vcproj", "{75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_db", "src\mod\applications\mod_db\mod_db.2008.vcproj", "{F6A33240-8F29-48BD-98F0-826995911799}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_expr", "src\mod\applications\mod_expr\mod_expr.2008.vcproj", "{65A6273D-FCAB-4C55-B09E-65100141A5D4}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dialplan_asterisk", "src\mod\dialplans\mod_dialplan_asterisk\mod_dialplan_asterisk.2008.vcproj", "{E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_logfile", "src\mod\loggers\mod_logfile\mod_logfile.2008.vcproj", "{D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_cdr_csv", "src\mod\event_handlers\mod_cdr_csv\mod_cdr_csv.2008.vcproj", "{44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_tone_stream", "src\mod\formats\mod_tone_stream\mod_tone_stream.2008.vcproj", "{6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {89385C74-5860-4174-9CAF-A39E7C48909C} = {89385C74-5860-4174-9CAF-A39E7C48909C}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_fsv", "src\mod\applications\mod_fsv\mod_fsv.2008.vcproj", "{E3246D17-E29B-4AB5-962A-C69B0C5837BB}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_curl", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_curl.2008.vcproj", "{36E854E3-CE12-4348-A125-CCF3F9D74813}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D} = {204FA0DE-305D-4414-AE2E-F195A23F390D}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lua", "src\mod\languages\mod_lua\mod_lua.2008.vcproj", "{7B077E7F-1BE7-4291-AB86-55E527B25CAC}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {D0B36172-CD76-454A-9B89-990025266C2A} = {D0B36172-CD76-454A-9B89-990025266C2A}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download sphinxbase", "libs\win32\Download sphinxbase.2008.vcproj", "{4F92B672-DADB-4047-8D6A-4BB3796733FD}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download sphinxmodel", "libs\win32\Download sphinxmodel.2008.vcproj", "{2DEE4895-1134-439C-B688-52203E57D878}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download pocketsphinx", "libs\win32\Download pocketsphinx.2008.vcproj", "{AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sphinxbase", "libs\win32\sphinxbase\sphinxbase.2008.vcproj", "{2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD} = {4F92B672-DADB-4047-8D6A-4BB3796733FD}
-+ {2DEE4895-1134-439C-B688-52203E57D878} = {2DEE4895-1134-439C-B688-52203E57D878}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pocketsphinx", "libs\win32\pocketsphinx\pocketsphinx.2008.vcproj", "{94001A0E-A837-445C-8004-F918F10D0226}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D} = {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E} = {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_pocketsphinx", "src\mod\asr_tts\mod_pocketsphinx\mod_pocketsphinx.2008.vcproj", "{2286DA73-9FC5-45BC-A508-85994C3317AB}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {94001A0E-A837-445C-8004-F918F10D0226} = {94001A0E-A837-445C-8004-F918F10D0226}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD} = {4F92B672-DADB-4047-8D6A-4BB3796733FD}
-+ {2DEE4895-1134-439C-B688-52203E57D878} = {2DEE4895-1134-439C-B688-52203E57D878}
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D} = {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E} = {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 8khzsound", "libs\win32\Download 8khz Sounds.2008.vcproj", "{3CE1DC99-8246-4DB1-A709-74F19F08EC67}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Sound Files", "Sound Files", "{4F227C26-768F-46A3-8684-1D08A46FB374}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 16khzsound", "libs\win32\Download 16khz Sounds.2008.vcproj", "{87A1FE3D-F410-4C8E-9591-8C625985BC70}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "8khz", "libs\win32\Sound_Files\8khz.2008.vcproj", "{7A8D8174-B355-4114-AFC1-04777CB9DE0A}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67} = {3CE1DC99-8246-4DB1-A709-74F19F08EC67}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "16khz", "libs\win32\Sound_Files\16khz.2008.vcproj", "{7EB71250-F002-4ED8-92CA-CA218114537A}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70} = {87A1FE3D-F410-4C8E-9591-8C625985BC70}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 32khzsound", "libs\win32\Dowload 32khz Sounds.2008.vcproj", "{6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "32khz", "libs\win32\Sound_Files\32khz.2008.vcproj", "{464AAB78-5489-4916-BE51-BF8D61822311}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F} = {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "flite", "libs\win32\flite\flite.2008.vcproj", "{0AD1177E-1FD8-4643-9391-431467A11084}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B} = {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_flite", "src\mod\asr_tts\mod_flite\mod_flite.2008.vcproj", "{66444AEE-554C-11DD-A9F0-8C5D56D89593}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B} = {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}
-+ {0AD1177E-1FD8-4643-9391-431467A11084} = {0AD1177E-1FD8-4643-9391-431467A11084}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download FLITE", "libs\win32\Download FLITE.2008.vcproj", "{D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download LAME", "libs\win32\Download LAME.2008.vcproj", "{D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download LIBSHOUT", "libs\win32\Download LIBSHOUT.2008.vcproj", "{D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download OGG", "libs\win32\Download OGG.2008.vcproj", "{D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmp3lame", "libs\win32\libmp3lame\libmp3lame_vc7.vcproj", "{E316772F-5D8F-4F2A-8F71-094C3E859D34}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B} = {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libshout", "libs\win32\libshout\libshout.vcproj", "{D3D8B329-20BE-475E-9E83-653CEA0E0EF5}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B} = {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4} = {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_shout", "src\mod\formats\mod_shout\mod_shout.vcproj", "{38FE0559-9910-43A8-9E45-3E5004C27692}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5} = {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34} = {E316772F-5D8F-4F2A-8F71-094C3E859D34}
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4} = {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {419C8F80-D858-4B48-A25C-AF4007608137} = {419C8F80-D858-4B48-A25C-AF4007608137}
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libogg", "libs\win32\libogg\libogg.2008.vcproj", "{0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B} = {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_snom", "src\mod\applications\mod_snom\mod_snom.2008.vcproj", "{2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_zh", "src\mod\say\mod_say_zh\mod_say_zh.2008.vcproj", "{B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_managed", "src\mod\languages\mod_managed\mod_managed.vcproj", "{7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0} = {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FreeSWITCH.Managed", "src\mod\languages\mod_managed\managed\FreeSWITCH.Managed.csproj", "{834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download mpg123", "libs\win32\Download mpg123.2008.vcproj", "{E796E337-DE78-4303-8614-9A590862EE95}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmpg123", "libs\win32\mpg123\libmpg123.2008.vcproj", "{419C8F80-D858-4B48-A25C-AF4007608137}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {E796E337-DE78-4303-8614-9A590862EE95} = {E796E337-DE78-4303-8614-9A590862EE95}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_loopback", "src\mod\endpoints\mod_loopback\mod_loopback.2008.vcproj", "{B3F424EC-3D8F-417C-B244-3919D5E1A577}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_vmd", "src\mod\applications\mod_vmd\mod_vmd.2008.vcproj", "{14E4A972-9CFB-436D-B0A5-4943F3F80D47}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libg722_1", "libs\win32\libg722_1\libg722_1.vcproj", "{1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_siren", "src\mod\codecs\mod_siren\mod_siren.2008.vcproj", "{0B6C905B-142E-4999-B39D-92FF7951E921}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C} = {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "esl", "libs\esl\src\esl.2008.vcproj", "{CF405366-9558-4AE8-90EF-5E21B51CCB4E}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fs_cli", "libs\esl\fs_cli.2008.vcproj", "{D2FB8043-D208-4AEE-8F18-3B5857C871B9}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E} = {CF405366-9558-4AE8-90EF-5E21B51CCB4E}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_easyroute", "src\mod\applications\mod_easyroute\mod_easyroute.2008.vcproj", "{329FD5B0-EF28-4606-86D0-F6EA21CF8E36}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lcr", "src\mod\applications\mod_lcr\mod_lcr.2008.vcproj", "{1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libtiff", "libs\spandsp\src\libtiff.2008.vcproj", "{401A40CD-5DB4-4E34-AC68-FA99E9FAC014}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspandsp", "libs\spandsp\src\libspandsp.2008.vcproj", "{1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A} = {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838} = {329A6FA0-0FCC-4435-A950-E670AEFA9838}
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330} = {DEE932AB-5911-4700-9EEB-8C7090A0A330}
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014} = {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspeex", "libs\speex\win32\VS2008\libspeex\libspeex.vcproj", "{E972C52F-9E85-4D65-B19C-031E511E9DB4}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspeexdsp", "libs\speex\win32\VS2008\libspeexdsp\libspeexdsp.vcproj", "{03207781-0D1C-4DB3-A71D-45C608F28DBD}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libilbc", "libs\ilbc\libilbc.2008.vcproj", "{9A5DDF08-C88C-4A35-B7F6-D605228446BD}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lua51", "src\mod\languages\mod_lua\lua\lua.2008.vcproj", "{D0B36172-CD76-454A-9B89-990025266C2A}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_opal", "src\mod\endpoints\mod_opal\mod_opal_2008.vcproj", "{05C9FB27-480E-4D53-B3B7-6338E2526666}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_h323", "src\mod\endpoints\mod_h323\mod_h323_2008.vcproj", "{05C9FB27-480E-4D53-B3B7-7338E2514666}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_iSAC", "src\mod\codecs\mod_isac\mod_iSAC.2008.vcproj", "{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skinny", "src\mod\endpoints\mod_skinny\mod_skinny_2008.vcproj", "{CC1DD008-9406-448D-A0AD-33C3186CFADB}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_rtmp", "src\mod\endpoints\mod_rtmp\mod_rtmp_2008.vcproj", "{48414740-C693-4968-9846-EE058020C64F}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_at_dictionary", "libs\spandsp\src\msvc\make_at_dictionary.2008.vcproj", "{DEE932AB-5911-4700-9EEB-8C7090A0A330}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_modem_filter", "libs\spandsp\src\msvc\make_modem_filter.2008.vcproj", "{329A6FA0-0FCC-4435-A950-E670AEFA9838}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skel", "src\mod\applications\mod_skel\mod_skel.2008.vcproj", "{11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skypopen", "src\mod\endpoints\mod_skypopen\mod_skypopen.2008.vcproj", "{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 32khz music", "libs\win32\Dowload 32khz music.2008.vcproj", "{1F0A8A77-E661-418F-BB92-82172AE43803}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 8khz music", "libs\win32\Download 8khz music.2008.vcproj", "{4F5C9D55-98EF-4256-8311-32D7BD360406}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 16khz music", "libs\win32\Download 16khz music.2008.vcproj", "{E10571C4-E7F4-4608-B5F2-B22E7EB95400}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "8khz music", "libs\win32\Sound_Files\8khzmusic.2008.vcproj", "{D1ABE208-6442-4FB4-9AAD-1677E41BC870}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406} = {4F5C9D55-98EF-4256-8311-32D7BD360406}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "16khz music", "libs\win32\Sound_Files\16khzmusic.2008.vcproj", "{BA599D0A-4310-4505-91DA-6A6447B3E289}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400} = {E10571C4-E7F4-4608-B5F2-B22E7EB95400}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "32khz music", "libs\win32\Sound_Files\32khzmusic.2008.vcproj", "{EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {1F0A8A77-E661-418F-BB92-82172AE43803} = {1F0A8A77-E661-418F-BB92-82172AE43803}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_nibblebill", "src\mod\applications\mod_nibblebill\mod_nibblebill.2008.vcproj", "{3C977801-FE88-48F2-83D3-FA2EBFF6688E}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_ru", "src\mod\say\mod_say_ru\mod_say_ru.2008.vcproj", "{0382E8FD-CFDC-41C0-8B03-792C7C84FC31}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_valet_parking", "src\mod\applications\mod_valet_parking\mod_valet_parking.2008.vcproj", "{432DB165-1EB2-4781-A9C0-71E62610B20A}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libbroadvoice", "libs\broadvoice\src\libbroadvoice.2008.vcproj", "{CF70F278-3364-4395-A2E1-23501C9B8AD2}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_bv", "src\mod\codecs\mod_bv\mod_bv.2008.vcproj", "{D5C87B19-150D-4EF3-A671-96589BD2D14A}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2} = {CF70F278-3364-4395-A2E1-23501C9B8AD2}
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "unimrcp", "unimrcp", "{62F27B1A-C919-4A70-8478-51F178F3B18F}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "aprtoolkit", "libs\unimrcp\libs\apr-toolkit\aprtoolkit.2008.vcproj", "{13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3} = {F057DA7F-79E5-4B00-845C-EF446EF055E3}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mpf", "libs\unimrcp\libs\mpf\mpf.2008.vcproj", "{B5A00BFA-6083-4FAE-A097-71642D6473B5}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcp", "libs\unimrcp\libs\mrcp\mrcp.2008.vcproj", "{1C320193-46A6-4B34-9C56-8AB584FC1B56}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpclient", "libs\unimrcp\libs\mrcp-client\mrcpclient.2008.vcproj", "{72782932-37CC-46AE-8C7F-9A7B1A6EE108}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpsignaling", "libs\unimrcp\libs\mrcp-signaling\mrcpsignaling.2008.vcproj", "{12A49562-BAB9-43A3-A21D-15B60BBB4C31}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpv2transport", "libs\unimrcp\libs\mrcpv2-transport\mrcpv2transport.2008.vcproj", "{A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unirtsp", "libs\unimrcp\libs\uni-rtsp\unirtsp.2008.vcproj", "{504B3154-7A4F-459D-9877-B951021C3F1F}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpsofiasip", "libs\unimrcp\modules\mrcp-sofiasip\mrcpsofiasip.2008.vcproj", "{746F3632-5BB2-4570-9453-31D6D58A7D8E}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0} = {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpunirtsp", "libs\unimrcp\modules\mrcp-unirtsp\mrcpunirtsp.2008.vcproj", "{DEB01ACB-D65F-4A62-AED9-58C1054499E9}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_unimrcp", "src\mod\asr_tts\mod_unimrcp\mod_unimrcp.2008.vcproj", "{D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA} = {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108} = {72782932-37CC-46AE-8C7F-9A7B1A6EE108}
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E} = {746F3632-5BB2-4570-9453-31D6D58A7D8E}
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {504B3154-7A4F-459D-9877-B951021C3F1F} = {504B3154-7A4F-459D-9877-B951021C3F1F}
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31} = {12A49562-BAB9-43A3-A21D-15B60BBB4C31}
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {B4B62169-5AD4-4559-8707-3D933AC5DB39}
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3} = {F057DA7F-79E5-4B00-845C-EF446EF055E3}
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56} = {1C320193-46A6-4B34-9C56-8AB584FC1B56}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2} = {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0} = {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9} = {DEB01ACB-D65F-4A62-AED9-58C1054499E9}
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5} = {B5A00BFA-6083-4FAE-A097-71642D6473B5}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download CELT", "libs\win32\Download CELT.vcproj", "{FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libcelt", "libs\win32\celt\libcelt.vcproj", "{ABB71A76-42B0-47A4-973A-42E3D920C6FD}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19} = {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_celt", "src\mod\codecs\mod_celt\mod_celt.vcproj", "{4D418176-3B33-47E6-A63E-01BA34ADD21C}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD} = {ABB71A76-42B0-47A4-973A-42E3D920C6FD}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FSComm", "fscomm\FSComm.2008.vcproj", "{7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_curl", "src\mod\applications\mod_curl\mod_curl.2008.vcproj", "{EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {87EE9DA4-DE1E-4448-8324-183C98DCA588}
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A} = {9778F1C0-09BC-4698-8EBC-BD982247209A}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download JSON", "libs\win32\Download JSON.2008.vcproj", "{B808178B-82F0-4CF4-A2B1-921939FA24D0}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjson", "libs\win32\json\libjson.2008.vcproj", "{9778F1C0-09BC-4698-8EBC-BD982247209A}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0} = {B808178B-82F0-4CF4-A2B1-921939FA24D0}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_silk", "src\mod\codecs\mod_silk\mod_silk.2008.vcproj", "{AFA983D6-4569-4F88-BA94-555ED00FD9A8}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76} = {56B91D01-9150-4BBF-AFA1-5B68AB991B76}
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Silk_FIX", "libs\silk\src\Silk_FIX.2008.vcproj", "{56B91D01-9150-4BBF-AFA1-5B68AB991B76}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_avmd", "src\mod\applications\mod_avmd\mod_avmd.2008.vcproj", "{990BAA76-89D3-4E38-8479-C7B28784EFC8}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spandsp", "src\mod\applications\mod_spandsp\mod_spandsp.2008.vcproj", "{1E21AFE0-6FDB-41D2-942D-863607C24B91}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5} = {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_hash", "src\mod\applications\mod_hash\mod_hash.2008.vcproj", "{2E250296-0C08-4342-9C8A-BCBDD0E7DF65}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E} = {CF405366-9558-4AE8-90EF-5E21B51CCB4E}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download OPENSSL", "libs\win32\Download OPENSSL.2008.vcproj", "{D578E676-7EC8-4548-BD8B-845C635F14AD}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "openssl", "openssl", "{B376D494-D7DD-4B2A-99E2-52916D5A8CD8}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libeay32", "libs\win32\openssl\libeay32.2008.vcproj", "{D331904D-A00A-4694-A5A3-FCFF64AB5DBE}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD} = {D578E676-7EC8-4548-BD8B-845C635F14AD}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssleay32", "libs\win32\openssl\ssleay32.2008.vcproj", "{B4B62169-5AD4-4559-8707-3D933AC5DB39}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "openssl", "libs\win32\openssl\openssl.2008.vcproj", "{25BD39B1-C8BF-4676-A738-9CABD9C6BC79}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {B4B62169-5AD4-4559-8707-3D933AC5DB39}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_directory", "src\mod\applications\mod_directory\mod_directory.2008.vcproj", "{42E721FD-43D6-4B04-A34B-42567199FFB8}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ldns", "libs\win32\ldns\ldns-lib\ldns-lib.2008.vcproj", "{23B4D303-79FC-49E0-89E2-2280E7E28940}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_httapi", "src\mod\applications\mod_httapi\mod_httapi.2008.vcproj", "{0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_abstraction", "src\mod\applications\mod_abstraction\mod_abstraction.2008.vcproj", "{BDA173DB-F8EF-4270-9553-B453AF92E43A}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_gsmopen", "src\mod\endpoints\mod_gsmopen\mod_gsmopen.2008.vcproj", "{74B120FF-6935-4DFE-A142-CDB6BEA99C90}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53} = {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gsmlib", "src\mod\endpoints\mod_gsmopen\gsmlib\gsmlib-1.10-patched-13ubuntu\win32\gsmlib.vcproj", "{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjpeg", "libs\win32\libjpeg\libjpeg.2008.vcproj", "{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {21A7DA70-555E-49FA-942B-D84A38B61243} = {21A7DA70-555E-49FA-942B-D84A38B61243}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download libjpeg", "libs\win32\Download libjpeg.2008.vcproj", "{21A7DA70-555E-49FA-942B-D84A38B61243}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "xmlrpc-c", "xmlrpc-c", "{3783935D-7C0A-4166-A376-C3D8E64F3A9C}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "abyss", "libs\win32\xmlrpc-c\abyss.2008.vcproj", "{A4D67895-E709-40C7-82B6-DE1D12DDDE04}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gennmtab", "libs\win32\xmlrpc-c\gennmtab.2008.vcproj", "{2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888} = {E5A9BCDA-B82D-4B08-B23E-9A782E367888}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmlparse", "libs\win32\xmlrpc-c\xmlparse.2008.vcproj", "{E5A9BCDA-B82D-4B08-B23E-9A782E367888}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmlrpc", "libs\win32\xmlrpc-c\xmlrpc.2008.vcproj", "{510BDAA8-C04D-47DB-8482-E6AF380D3E07}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmltok", "libs\win32\xmlrpc-c\xmltok.2008.vcproj", "{3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}"
-+EndProject
-+Global
-+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
-+ All|Win32 = All|Win32
-+ All|x64 = All|x64
-+ Debug|Win32 = Debug|Win32
-+ Debug|x64 = Debug|x64
-+ Release|Win32 = Release|Win32
-+ Release|x64 = Release|x64
-+ EndGlobalSection
-+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|Win32.ActiveCfg = Release|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64.ActiveCfg = Release|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64.Build.0 = Release|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|Win32.Build.0 = Debug|Win32
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x64.ActiveCfg = Debug|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x64.Build.0 = Debug|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|Win32.ActiveCfg = Release|Win32
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|Win32.Build.0 = Release|Win32
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|x64.ActiveCfg = Release|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|x64.Build.0 = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|Win32.ActiveCfg = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64.ActiveCfg = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64.Build.0 = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|Win32.Build.0 = Debug|Win32
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x64.ActiveCfg = Debug|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x64.Build.0 = Debug|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|Win32.ActiveCfg = Release|Win32
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|Win32.Build.0 = Release|Win32
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|x64.ActiveCfg = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|x64.Build.0 = Release|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|Win32.ActiveCfg = Release Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64.ActiveCfg = Release Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64.Build.0 = Release Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|Win32.ActiveCfg = Debug Passthrough|Win32
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|Win32.Build.0 = Debug Passthrough|Win32
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x64.ActiveCfg = Debug Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x64.Build.0 = Debug Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|Win32.ActiveCfg = Release Passthrough|Win32
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|Win32.Build.0 = Release Passthrough|Win32
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|x64.ActiveCfg = Release Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|x64.Build.0 = Release Passthrough|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|Win32.ActiveCfg = Release|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64.ActiveCfg = Release|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64.Build.0 = Release|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|Win32.Build.0 = Debug|Win32
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x64.ActiveCfg = Debug|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x64.Build.0 = Debug|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|Win32.ActiveCfg = Release|Win32
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|Win32.Build.0 = Release|Win32
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|x64.ActiveCfg = Release|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|x64.Build.0 = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|Win32.ActiveCfg = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64.ActiveCfg = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64.Build.0 = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|Win32.Build.0 = Debug|Win32
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x64.ActiveCfg = Debug|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x64.Build.0 = Debug|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|Win32.ActiveCfg = Release|Win32
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|Win32.Build.0 = Release|Win32
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|x64.ActiveCfg = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|x64.Build.0 = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|Win32.ActiveCfg = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x64.ActiveCfg = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x64.Build.0 = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|Win32.Build.0 = Debug|Win32
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|x64.ActiveCfg = Debug|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|x64.Build.0 = Debug|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|Win32.ActiveCfg = Release|Win32
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|Win32.Build.0 = Release|Win32
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|x64.ActiveCfg = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|x64.Build.0 = Release|x64
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|Win32.ActiveCfg = Release|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|x64.ActiveCfg = Release|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|x64.ActiveCfg = Debug|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release|Win32.ActiveCfg = Release|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release|x64.ActiveCfg = Release|Win32
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|Win32.ActiveCfg = Release|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64.ActiveCfg = Release|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64.Build.0 = Release|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|Win32.Build.0 = Debug|Win32
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x64.ActiveCfg = Debug|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x64.Build.0 = Debug|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|Win32.ActiveCfg = Release|Win32
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|Win32.Build.0 = Release|Win32
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|x64.ActiveCfg = Release|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|x64.Build.0 = Release|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|Win32.ActiveCfg = Release MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64.ActiveCfg = Release MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64.Build.0 = Release MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|Win32.ActiveCfg = Debug MS-LDAP|Win32
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|Win32.Build.0 = Debug MS-LDAP|Win32
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x64.ActiveCfg = Debug MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x64.Build.0 = Debug MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|Win32.ActiveCfg = Release MS-LDAP|Win32
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|Win32.Build.0 = Release MS-LDAP|Win32
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|x64.ActiveCfg = Release MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|x64.Build.0 = Release MS-LDAP|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|Win32.ActiveCfg = Release|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64.ActiveCfg = Release|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64.Build.0 = Release|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|Win32.Build.0 = Debug|Win32
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x64.ActiveCfg = Debug|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x64.Build.0 = Debug|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|Win32.ActiveCfg = Release|Win32
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|Win32.Build.0 = Release|Win32
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|x64.ActiveCfg = Release|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|x64.Build.0 = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.All|Win32.ActiveCfg = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64.ActiveCfg = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64.Build.0 = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|Win32.Build.0 = Debug|Win32
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x64.ActiveCfg = Debug|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x64.Build.0 = Debug|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|Win32.ActiveCfg = Release|Win32
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|Win32.Build.0 = Release|Win32
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|x64.ActiveCfg = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|x64.Build.0 = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.All|Win32.ActiveCfg = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64.ActiveCfg = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64.Build.0 = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|Win32.Build.0 = Debug|Win32
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x64.ActiveCfg = Debug|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x64.Build.0 = Debug|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|Win32.ActiveCfg = Release|Win32
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|Win32.Build.0 = Release|Win32
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|x64.ActiveCfg = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|x64.Build.0 = Release|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|Win32.ActiveCfg = Release|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x64.ActiveCfg = Release|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x64.Build.0 = Release|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|Win32.Build.0 = Debug|Win32
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|x64.ActiveCfg = Debug|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|Win32.ActiveCfg = Release|Win32
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|Win32.Build.0 = Release|Win32
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|x64.ActiveCfg = Release|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.All|Win32.ActiveCfg = Release|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64.ActiveCfg = Release|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64.Build.0 = Release|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|x64.ActiveCfg = Debug|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.Release|Win32.ActiveCfg = Release|Win32
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.Release|x64.ActiveCfg = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|Win32.ActiveCfg = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64.ActiveCfg = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64.Build.0 = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|Win32.Build.0 = Debug|Win32
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x64.ActiveCfg = Debug|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x64.Build.0 = Debug|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|Win32.ActiveCfg = Release|Win32
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|Win32.Build.0 = Release|Win32
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|x64.ActiveCfg = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|x64.Build.0 = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|Win32.ActiveCfg = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64.ActiveCfg = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64.Build.0 = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|Win32.Build.0 = Debug|Win32
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x64.ActiveCfg = Debug|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x64.Build.0 = Debug|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|Win32.ActiveCfg = Release|Win32
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|Win32.Build.0 = Release|Win32
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|x64.ActiveCfg = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|x64.Build.0 = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|Win32.ActiveCfg = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64.ActiveCfg = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64.Build.0 = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|Win32.Build.0 = Debug|Win32
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x64.ActiveCfg = Debug|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x64.Build.0 = Debug|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|Win32.ActiveCfg = Release|Win32
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|Win32.Build.0 = Release|Win32
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|x64.ActiveCfg = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|x64.Build.0 = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.All|Win32.ActiveCfg = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64.ActiveCfg = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64.Build.0 = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|Win32.Build.0 = Debug|Win32
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x64.ActiveCfg = Debug|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x64.Build.0 = Debug|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Release|Win32.ActiveCfg = Release|Win32
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Release|Win32.Build.0 = Release|Win32
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Release|x64.ActiveCfg = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Release|x64.Build.0 = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|Win32.ActiveCfg = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64.ActiveCfg = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64.Build.0 = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|Win32.Build.0 = Debug|Win32
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x64.ActiveCfg = Debug|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x64.Build.0 = Debug|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|Win32.ActiveCfg = Release|Win32
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|Win32.Build.0 = Release|Win32
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|x64.ActiveCfg = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|x64.Build.0 = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|Win32.ActiveCfg = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64.ActiveCfg = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64.Build.0 = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|Win32.Build.0 = Debug|Win32
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x64.ActiveCfg = Debug|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x64.Build.0 = Debug|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|Win32.ActiveCfg = Release|Win32
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|Win32.Build.0 = Release|Win32
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|x64.ActiveCfg = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|x64.Build.0 = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.All|Win32.ActiveCfg = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64.ActiveCfg = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64.Build.0 = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|Win32.Build.0 = Debug|Win32
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x64.ActiveCfg = Debug|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x64.Build.0 = Debug|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Release|Win32.ActiveCfg = Release|Win32
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Release|Win32.Build.0 = Release|Win32
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Release|x64.ActiveCfg = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Release|x64.Build.0 = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|Win32.ActiveCfg = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64.ActiveCfg = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64.Build.0 = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|Win32.Build.0 = Debug|Win32
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x64.ActiveCfg = Debug|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x64.Build.0 = Debug|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|Win32.ActiveCfg = Release|Win32
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|Win32.Build.0 = Release|Win32
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|x64.ActiveCfg = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|x64.Build.0 = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.All|Win32.ActiveCfg = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64.ActiveCfg = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64.Build.0 = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|Win32.Build.0 = Debug|Win32
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x64.ActiveCfg = Debug|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x64.Build.0 = Debug|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|Win32.ActiveCfg = Release|Win32
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|Win32.Build.0 = Release|Win32
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|x64.ActiveCfg = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|x64.Build.0 = Release|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.All|Win32.ActiveCfg = Release DLL|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64.ActiveCfg = Release DLL|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64.Build.0 = Release DLL|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|Win32.Build.0 = Debug|Win32
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x64.ActiveCfg = Debug|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x64.Build.0 = Debug|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|Win32.ActiveCfg = Release|Win32
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|Win32.Build.0 = Release|Win32
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|x64.ActiveCfg = Release|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|x64.Build.0 = Release|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|Win32.ActiveCfg = Release Dll|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64.ActiveCfg = Release Dll|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64.Build.0 = Release Dll|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|Win32.Build.0 = Debug|Win32
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x64.ActiveCfg = Debug|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x64.Build.0 = Debug|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|Win32.ActiveCfg = Release|Win32
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|Win32.Build.0 = Release|Win32
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|x64.ActiveCfg = Release|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|x64.Build.0 = Release|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|Win32.ActiveCfg = Release DLL|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64.ActiveCfg = Release DLL|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64.Build.0 = Release DLL|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|Win32.Build.0 = Debug|Win32
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x64.ActiveCfg = Debug|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x64.Build.0 = Debug|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|Win32.ActiveCfg = Release|Win32
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|Win32.Build.0 = Release|Win32
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|x64.ActiveCfg = Release|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|x64.Build.0 = Release|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|Win32.ActiveCfg = Release DLL|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64.ActiveCfg = Release DLL|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64.Build.0 = Release DLL|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|Win32.Build.0 = Debug|Win32
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x64.ActiveCfg = Debug|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x64.Build.0 = Debug|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|Win32.ActiveCfg = Release|Win32
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|Win32.Build.0 = Release|Win32
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|x64.ActiveCfg = Release|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|x64.Build.0 = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|Win32.ActiveCfg = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x64.ActiveCfg = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x64.Build.0 = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|Win32.Build.0 = Debug|Win32
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|x64.ActiveCfg = Debug|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|x64.Build.0 = Debug|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|Win32.ActiveCfg = Release|Win32
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|Win32.Build.0 = Release|Win32
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|x64.ActiveCfg = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|x64.Build.0 = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|Win32.ActiveCfg = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64.ActiveCfg = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64.Build.0 = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|Win32.Build.0 = Debug|Win32
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x64.ActiveCfg = Debug|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x64.Build.0 = Debug|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|Win32.ActiveCfg = Release|Win32
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|Win32.Build.0 = Release|Win32
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|x64.ActiveCfg = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|x64.Build.0 = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|Win32.ActiveCfg = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64.ActiveCfg = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64.Build.0 = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|Win32.Build.0 = Debug|Win32
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x64.ActiveCfg = Debug|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x64.Build.0 = Debug|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|Win32.ActiveCfg = Release|Win32
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|Win32.Build.0 = Release|Win32
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|x64.ActiveCfg = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|x64.Build.0 = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|Win32.ActiveCfg = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64.ActiveCfg = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64.Build.0 = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|Win32.Build.0 = Debug|Win32
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x64.ActiveCfg = Debug|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x64.Build.0 = Debug|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|Win32.ActiveCfg = Release|Win32
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|Win32.Build.0 = Release|Win32
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|x64.ActiveCfg = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|x64.Build.0 = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|Win32.ActiveCfg = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64.ActiveCfg = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64.Build.0 = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|Win32.Build.0 = Debug|Win32
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x64.ActiveCfg = Debug|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x64.Build.0 = Debug|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|Win32.ActiveCfg = Release|Win32
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|Win32.Build.0 = Release|Win32
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|x64.ActiveCfg = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|x64.Build.0 = Release|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|Win32.ActiveCfg = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64.ActiveCfg = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64.Build.0 = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|Win32.Build.0 = Debug|Win32
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x64.ActiveCfg = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x64.Build.0 = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|Win32.ActiveCfg = Release|Win32
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|Win32.Build.0 = Release|Win32
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|x64.ActiveCfg = Release|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|x64.Build.0 = Release|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|Win32.ActiveCfg = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64.ActiveCfg = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64.Build.0 = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|Win32.Build.0 = Debug|Win32
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x64.ActiveCfg = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x64.Build.0 = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|Win32.ActiveCfg = Release|Win32
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|Win32.Build.0 = Release|Win32
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|x64.ActiveCfg = Release|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|x64.Build.0 = Release|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|Win32.ActiveCfg = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x64.ActiveCfg = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x64.Build.0 = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|Win32.Build.0 = Debug|Win32
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|x64.ActiveCfg = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|x64.Build.0 = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|Win32.ActiveCfg = Release|Win32
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|Win32.Build.0 = Release|Win32
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|x64.ActiveCfg = Release|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|x64.Build.0 = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|Win32.ActiveCfg = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64.ActiveCfg = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64.Build.0 = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|Win32.Build.0 = Debug|Win32
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x64.ActiveCfg = Debug|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x64.Build.0 = Debug|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|Win32.ActiveCfg = Release|Win32
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|Win32.Build.0 = Release|Win32
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|x64.ActiveCfg = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|x64.Build.0 = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|Win32.ActiveCfg = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64.ActiveCfg = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64.Build.0 = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|Win32.Build.0 = Debug|Win32
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x64.ActiveCfg = Debug|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x64.Build.0 = Debug|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|Win32.ActiveCfg = Release|Win32
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|Win32.Build.0 = Release|Win32
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|x64.ActiveCfg = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|x64.Build.0 = Release|x64
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|Win32.ActiveCfg = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|Win32.Build.0 = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64.ActiveCfg = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64.Build.0 = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|Win32.Build.0 = Debug|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x64.ActiveCfg = Debug|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x64.Build.0 = Debug|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|Win32.ActiveCfg = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|Win32.Build.0 = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|x64.ActiveCfg = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|x64.Build.0 = Release|Win32
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|Win32.ActiveCfg = Release DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64.ActiveCfg = Release DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64.Build.0 = Release DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|Win32.ActiveCfg = Debug DLL|Win32
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|Win32.Build.0 = Debug DLL|Win32
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x64.ActiveCfg = Debug DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x64.Build.0 = Debug DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|Win32.ActiveCfg = Release DLL|Win32
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|Win32.Build.0 = Release DLL|Win32
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|x64.ActiveCfg = Release DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|x64.Build.0 = Release DLL|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|Win32.ActiveCfg = Release Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64.ActiveCfg = Release Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64.Build.0 = Release Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|Win32.ActiveCfg = Debug Passthrough|Win32
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|Win32.Build.0 = Debug Passthrough|Win32
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x64.ActiveCfg = Debug Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x64.Build.0 = Debug Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|Win32.ActiveCfg = Release Passthrough|Win32
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|Win32.Build.0 = Release Passthrough|Win32
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|x64.ActiveCfg = Release Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|x64.Build.0 = Release Passthrough|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|Win32.ActiveCfg = Release|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64.ActiveCfg = Release|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64.Build.0 = Release|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|Win32.Build.0 = Debug|Win32
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x64.ActiveCfg = Debug|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x64.Build.0 = Debug|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|Win32.ActiveCfg = Release|Win32
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|Win32.Build.0 = Release|Win32
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|x64.ActiveCfg = Release|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|x64.Build.0 = Release|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|Win32.ActiveCfg = Release|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x64.ActiveCfg = Release|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x64.Build.0 = Release|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|Win32.Build.0 = Debug|Win32
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|x64.ActiveCfg = Debug|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|Win32.ActiveCfg = Release|Win32
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|Win32.Build.0 = Release|Win32
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|x64.ActiveCfg = Release|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|Win32.ActiveCfg = Release|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x64.ActiveCfg = Release|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x64.Build.0 = Release|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|Win32.Build.0 = Debug|Win32
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|x64.ActiveCfg = Debug|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|Win32.ActiveCfg = Release|Win32
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|Win32.Build.0 = Release|Win32
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|x64.ActiveCfg = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|Win32.ActiveCfg = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64.ActiveCfg = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64.Build.0 = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|Win32.Build.0 = Debug|Win32
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x64.ActiveCfg = Debug|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x64.Build.0 = Debug|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|Win32.ActiveCfg = Release|Win32
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|Win32.Build.0 = Release|Win32
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|x64.ActiveCfg = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|x64.Build.0 = Release|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|Win32.ActiveCfg = Release|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x64.ActiveCfg = Release|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x64.Build.0 = Release|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|Win32.Build.0 = Debug|Win32
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|x64.ActiveCfg = Debug|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|Win32.ActiveCfg = Release|Win32
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|Win32.Build.0 = Release|Win32
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|x64.ActiveCfg = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|Win32.ActiveCfg = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64.ActiveCfg = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64.Build.0 = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|Win32.Build.0 = Debug|Win32
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x64.ActiveCfg = Debug|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x64.Build.0 = Debug|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|Win32.ActiveCfg = Release|Win32
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|Win32.Build.0 = Release|Win32
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|x64.ActiveCfg = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|x64.Build.0 = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|Win32.ActiveCfg = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64.ActiveCfg = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64.Build.0 = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|Win32.Build.0 = Debug|Win32
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x64.ActiveCfg = Debug|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x64.Build.0 = Debug|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|Win32.ActiveCfg = Release|Win32
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|Win32.Build.0 = Release|Win32
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x64.ActiveCfg = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x64.Build.0 = Release|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|Win32.ActiveCfg = Release DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64.ActiveCfg = Release DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64.Build.0 = Release DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|Win32.Build.0 = Debug|Win32
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x64.ActiveCfg = Debug|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x64.Build.0 = Debug|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|Win32.ActiveCfg = Release|Win32
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|Win32.Build.0 = Release|Win32
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64.ActiveCfg = Release|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64.Build.0 = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|Win32.ActiveCfg = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64.ActiveCfg = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64.Build.0 = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|Win32.Build.0 = Debug|Win32
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x64.ActiveCfg = Debug|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x64.Build.0 = Debug|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|Win32.ActiveCfg = Release|Win32
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|Win32.Build.0 = Release|Win32
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|x64.ActiveCfg = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|x64.Build.0 = Release|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|Win32.ActiveCfg = Release Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64.ActiveCfg = Release Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64.Build.0 = Release Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|Win32.ActiveCfg = Debug Passthrough|Win32
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|Win32.Build.0 = Debug Passthrough|Win32
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x64.ActiveCfg = Debug Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x64.Build.0 = Debug Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|Win32.ActiveCfg = Release Passthrough|Win32
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|Win32.Build.0 = Release Passthrough|Win32
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|x64.ActiveCfg = Release Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|x64.Build.0 = Release Passthrough|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|Win32.ActiveCfg = Release|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64.ActiveCfg = Release|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64.Build.0 = Release|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|Win32.Build.0 = Debug|Win32
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x64.ActiveCfg = Debug|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x64.Build.0 = Debug|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|Win32.ActiveCfg = Release|Win32
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|Win32.Build.0 = Release|Win32
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|x64.ActiveCfg = Release|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|x64.Build.0 = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|Win32.ActiveCfg = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64.ActiveCfg = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64.Build.0 = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|Win32.Build.0 = Debug|Win32
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x64.ActiveCfg = Debug|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x64.Build.0 = Debug|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|Win32.ActiveCfg = Release|Win32
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|Win32.Build.0 = Release|Win32
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|x64.ActiveCfg = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|x64.Build.0 = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|Win32.ActiveCfg = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64.ActiveCfg = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64.Build.0 = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|Win32.Build.0 = Debug|Win32
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x64.ActiveCfg = Debug|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x64.Build.0 = Debug|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|Win32.ActiveCfg = Release|Win32
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|Win32.Build.0 = Release|Win32
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|x64.ActiveCfg = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|x64.Build.0 = Release|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.All|Win32.ActiveCfg = Release|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x64.ActiveCfg = Release|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x64.Build.0 = Release|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|Win32.Build.0 = Debug|Win32
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|x64.ActiveCfg = Debug|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|Win32.ActiveCfg = Release|Win32
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|Win32.Build.0 = Release|Win32
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|x64.ActiveCfg = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|Win32.ActiveCfg = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64.ActiveCfg = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64.Build.0 = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|Win32.Build.0 = Debug|Win32
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x64.ActiveCfg = Debug|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x64.Build.0 = Debug|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|Win32.ActiveCfg = Release|Win32
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|Win32.Build.0 = Release|Win32
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|x64.ActiveCfg = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|x64.Build.0 = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|Win32.ActiveCfg = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64.ActiveCfg = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64.Build.0 = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|Win32.Build.0 = Debug|Win32
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x64.ActiveCfg = Debug|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x64.Build.0 = Debug|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|Win32.ActiveCfg = Release|Win32
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|Win32.Build.0 = Release|Win32
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|x64.ActiveCfg = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|x64.Build.0 = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|Win32.ActiveCfg = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64.ActiveCfg = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64.Build.0 = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|Win32.Build.0 = Debug|Win32
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x64.ActiveCfg = Debug|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x64.Build.0 = Debug|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|Win32.ActiveCfg = Release|Win32
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|Win32.Build.0 = Release|Win32
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|x64.ActiveCfg = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|x64.Build.0 = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|Win32.ActiveCfg = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64.ActiveCfg = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64.Build.0 = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|Win32.Build.0 = Debug|Win32
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x64.ActiveCfg = Debug|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x64.Build.0 = Debug|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|Win32.ActiveCfg = Release|Win32
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|Win32.Build.0 = Release|Win32
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|x64.ActiveCfg = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|x64.Build.0 = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|Win32.ActiveCfg = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64.ActiveCfg = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64.Build.0 = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|Win32.Build.0 = Debug|Win32
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x64.ActiveCfg = Debug|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x64.Build.0 = Debug|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|Win32.ActiveCfg = Release|Win32
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|Win32.Build.0 = Release|Win32
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|x64.ActiveCfg = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|x64.Build.0 = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|Win32.ActiveCfg = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64.ActiveCfg = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64.Build.0 = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|Win32.Build.0 = Debug|Win32
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x64.ActiveCfg = Debug|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x64.Build.0 = Debug|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|Win32.ActiveCfg = Release|Win32
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|Win32.Build.0 = Release|Win32
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|x64.ActiveCfg = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|x64.Build.0 = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|Win32.ActiveCfg = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64.ActiveCfg = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64.Build.0 = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|Win32.Build.0 = Debug|Win32
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x64.ActiveCfg = Debug|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x64.Build.0 = Debug|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|Win32.ActiveCfg = Release|Win32
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|Win32.Build.0 = Release|Win32
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|x64.ActiveCfg = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|x64.Build.0 = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.All|Win32.ActiveCfg = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.All|x64.ActiveCfg = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.All|x64.Build.0 = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Debug|Win32.Build.0 = Debug|Win32
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x64.ActiveCfg = Debug|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x64.Build.0 = Debug|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Release|Win32.ActiveCfg = Release|Win32
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Release|Win32.Build.0 = Release|Win32
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Release|x64.ActiveCfg = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Release|x64.Build.0 = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|Win32.ActiveCfg = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64.ActiveCfg = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64.Build.0 = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|Win32.Build.0 = Debug|Win32
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x64.ActiveCfg = Debug|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x64.Build.0 = Debug|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|Win32.ActiveCfg = Release|Win32
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|Win32.Build.0 = Release|Win32
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|x64.ActiveCfg = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|x64.Build.0 = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|Win32.ActiveCfg = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64.ActiveCfg = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64.Build.0 = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|Win32.Build.0 = Debug|Win32
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x64.ActiveCfg = Debug|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x64.Build.0 = Debug|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|Win32.ActiveCfg = Release|Win32
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|Win32.Build.0 = Release|Win32
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|x64.ActiveCfg = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|x64.Build.0 = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|Win32.ActiveCfg = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64.ActiveCfg = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64.Build.0 = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|Win32.Build.0 = Debug|Win32
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x64.ActiveCfg = Debug|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x64.Build.0 = Debug|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|Win32.ActiveCfg = Release|Win32
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|Win32.Build.0 = Release|Win32
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|x64.ActiveCfg = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|x64.Build.0 = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|Win32.ActiveCfg = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64.ActiveCfg = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64.Build.0 = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|Win32.Build.0 = Debug|Win32
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x64.ActiveCfg = Debug|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x64.Build.0 = Debug|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|Win32.ActiveCfg = Release|Win32
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|Win32.Build.0 = Release|Win32
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|x64.ActiveCfg = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|x64.Build.0 = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|Win32.ActiveCfg = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64.ActiveCfg = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64.Build.0 = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|Win32.Build.0 = Debug|Win32
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x64.ActiveCfg = Debug|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x64.Build.0 = Debug|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|Win32.ActiveCfg = Release|Win32
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|Win32.Build.0 = Release|Win32
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|x64.ActiveCfg = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|x64.Build.0 = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|Win32.ActiveCfg = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64.ActiveCfg = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64.Build.0 = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|Win32.Build.0 = Debug|Win32
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x64.ActiveCfg = Debug|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x64.Build.0 = Debug|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|Win32.ActiveCfg = Release|Win32
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|Win32.Build.0 = Release|Win32
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|x64.ActiveCfg = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|x64.Build.0 = Release|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|Win32.ActiveCfg = Release|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x64.ActiveCfg = Release|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x64.Build.0 = Release|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|Win32.Build.0 = Debug|Win32
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|x64.ActiveCfg = Debug|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|Win32.ActiveCfg = Release|Win32
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|Win32.Build.0 = Release|Win32
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|x64.ActiveCfg = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|Win32.ActiveCfg = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64.ActiveCfg = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64.Build.0 = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|Win32.Build.0 = Debug|Win32
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x64.ActiveCfg = Debug|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x64.Build.0 = Debug|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|Win32.ActiveCfg = Release|Win32
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|Win32.Build.0 = Release|Win32
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64.ActiveCfg = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64.Build.0 = Release|x64
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|Win32.ActiveCfg = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|Win32.Build.0 = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64.ActiveCfg = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64.Build.0 = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|Win32.Build.0 = Debug|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x64.ActiveCfg = Debug|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x64.Build.0 = Debug|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|Win32.ActiveCfg = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|Win32.Build.0 = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|x64.ActiveCfg = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|x64.Build.0 = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.All|Win32.ActiveCfg = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.All|Win32.Build.0 = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.All|x64.ActiveCfg = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.All|x64.Build.0 = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Debug|Win32.Build.0 = Debug|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x64.ActiveCfg = Debug|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x64.Build.0 = Debug|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Release|Win32.ActiveCfg = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Release|Win32.Build.0 = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Release|x64.ActiveCfg = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Release|x64.Build.0 = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|Win32.ActiveCfg = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|Win32.Build.0 = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64.ActiveCfg = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64.Build.0 = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|Win32.Build.0 = Debug|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x64.ActiveCfg = Debug|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x64.Build.0 = Debug|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|Win32.ActiveCfg = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|Win32.Build.0 = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|x64.ActiveCfg = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|x64.Build.0 = Release|Win32
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|Win32.ActiveCfg = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64.ActiveCfg = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64.Build.0 = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|Win32.Build.0 = Debug|Win32
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x64.ActiveCfg = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x64.Build.0 = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|Win32.ActiveCfg = Release|Win32
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|Win32.Build.0 = Release|Win32
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|x64.ActiveCfg = Release|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|x64.Build.0 = Release|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.All|Win32.ActiveCfg = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.All|x64.ActiveCfg = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.All|x64.Build.0 = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Debug|Win32.Build.0 = Debug|Win32
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x64.ActiveCfg = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x64.Build.0 = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Release|Win32.ActiveCfg = Release|Win32
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Release|Win32.Build.0 = Release|Win32
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Release|x64.ActiveCfg = Release|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Release|x64.Build.0 = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|Win32.ActiveCfg = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x64.ActiveCfg = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x64.Build.0 = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|Win32.Build.0 = Debug|Win32
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|x64.ActiveCfg = Debug|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|x64.Build.0 = Debug|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|Win32.ActiveCfg = Release|Win32
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|Win32.Build.0 = Release|Win32
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|x64.ActiveCfg = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|x64.Build.0 = Release|x64
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|Win32.ActiveCfg = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|Win32.Build.0 = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64.ActiveCfg = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64.Build.0 = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|Win32.Build.0 = Debug|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x64.ActiveCfg = Debug|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x64.Build.0 = Debug|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|Win32.ActiveCfg = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|Win32.Build.0 = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|x64.ActiveCfg = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|x64.Build.0 = Release|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|Win32.ActiveCfg = Release|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|x64.ActiveCfg = Release|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|x64.ActiveCfg = Debug|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release|Win32.ActiveCfg = Release|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release|x64.ActiveCfg = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|Win32.ActiveCfg = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|Win32.Build.0 = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64.ActiveCfg = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64.Build.0 = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|Win32.Build.0 = Debug|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x64.ActiveCfg = Debug|x64
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x64.Build.0 = Debug|x64
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|Win32.ActiveCfg = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|Win32.Build.0 = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|x64.ActiveCfg = Release|x64
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|x64.Build.0 = Release|x64
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.All|Win32.ActiveCfg = Release|Win32
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.All|x64.ActiveCfg = Release|Win32
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|x64.ActiveCfg = Debug|x64
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.Release|Win32.ActiveCfg = Release|Win32
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.Release|x64.ActiveCfg = Release|x64
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|Win32.ActiveCfg = Release|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|x64.ActiveCfg = Release|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|x64.ActiveCfg = Debug|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release|Win32.ActiveCfg = Release|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release|x64.ActiveCfg = Release|Win32
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.All|Win32.ActiveCfg = Release|Win32
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.All|x64.ActiveCfg = Release|Win32
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|x64.ActiveCfg = Debug|x64
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.Release|Win32.ActiveCfg = Release|Win32
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.Release|x64.ActiveCfg = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.All|Win32.ActiveCfg = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64.ActiveCfg = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64.Build.0 = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|Win32.Build.0 = Debug|Win32
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x64.ActiveCfg = Debug|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x64.Build.0 = Debug|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Release|Win32.ActiveCfg = Release|Win32
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Release|Win32.Build.0 = Release|Win32
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Release|x64.ActiveCfg = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Release|x64.Build.0 = Release|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|Win32.ActiveCfg = Release Static|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64.ActiveCfg = Release Static|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64.Build.0 = Release Static|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x64.ActiveCfg = Debug|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|Win32.ActiveCfg = Release|Win32
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x64.ActiveCfg = Release|x64
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|Win32.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x64.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x64.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|Win32.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x64.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x64.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|Win32.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x64.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x64.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|Win32.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x64.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x64.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|x64.Build.0 = Release|Win32
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|Win32.ActiveCfg = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64.ActiveCfg = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64.Build.0 = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|Win32.Build.0 = Debug|Win32
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x64.ActiveCfg = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x64.Build.0 = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|Win32.ActiveCfg = Release|Win32
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|Win32.Build.0 = Release|Win32
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|x64.ActiveCfg = Release|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|x64.Build.0 = Release|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|Win32.ActiveCfg = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64.ActiveCfg = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64.Build.0 = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|Win32.Build.0 = Debug|Win32
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x64.ActiveCfg = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x64.Build.0 = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|Win32.ActiveCfg = Release|Win32
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|Win32.Build.0 = Release|Win32
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|x64.ActiveCfg = Release|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|x64.Build.0 = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.All|Win32.ActiveCfg = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64.ActiveCfg = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64.Build.0 = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|Win32.Build.0 = Debug|Win32
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x64.ActiveCfg = Debug|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x64.Build.0 = Debug|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|Win32.ActiveCfg = Release|Win32
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|Win32.Build.0 = Release|Win32
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|x64.ActiveCfg = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|x64.Build.0 = Release|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|Win32.ActiveCfg = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64.ActiveCfg = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64.Build.0 = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|Win32.Build.0 = Debug|Win32
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x64.ActiveCfg = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x64.Build.0 = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|Win32.ActiveCfg = Release|Win32
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|Win32.Build.0 = Release|Win32
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|x64.ActiveCfg = Release|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|x64.Build.0 = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|Win32.ActiveCfg = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64.ActiveCfg = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64.Build.0 = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|Win32.Build.0 = Debug|Win32
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x64.ActiveCfg = Debug|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x64.Build.0 = Debug|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|Win32.ActiveCfg = Release|Win32
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|Win32.Build.0 = Release|Win32
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|x64.ActiveCfg = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|x64.Build.0 = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|Win32.ActiveCfg = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64.ActiveCfg = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64.Build.0 = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|Win32.Build.0 = Debug|Win32
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x64.ActiveCfg = Debug|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x64.Build.0 = Debug|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|Win32.ActiveCfg = Release|Win32
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|Win32.Build.0 = Release|Win32
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|x64.ActiveCfg = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|x64.Build.0 = Release|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|Win32.ActiveCfg = Release_Mono|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64.ActiveCfg = Release_Mono|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64.Build.0 = Release_Mono|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|Win32.ActiveCfg = Debug_CLR|Win32
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|Win32.Build.0 = Debug_CLR|Win32
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x64.ActiveCfg = Debug_CLR|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x64.Build.0 = Debug_CLR|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|Win32.ActiveCfg = Release_CLR|Win32
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|Win32.Build.0 = Release_CLR|Win32
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|x64.ActiveCfg = Release_CLR|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|x64.Build.0 = Release_CLR|x64
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.All|Win32.ActiveCfg = Release|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.All|x64.ActiveCfg = Release|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|Win32.ActiveCfg = Debug|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|Win32.Build.0 = Debug|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|x64.ActiveCfg = Debug|x64
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|x64.Build.0 = Debug|x64
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|Win32.ActiveCfg = Release|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|Win32.Build.0 = Release|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|x64.ActiveCfg = Release|x64
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|x64.Build.0 = Release|x64
-+ {E796E337-DE78-4303-8614-9A590862EE95}.All|Win32.ActiveCfg = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.All|Win32.Build.0 = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.All|x64.ActiveCfg = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.All|x64.Build.0 = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Debug|Win32.Build.0 = Debug|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x64.ActiveCfg = Debug|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x64.Build.0 = Debug|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Release|Win32.ActiveCfg = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Release|Win32.Build.0 = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Release|x64.ActiveCfg = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Release|x64.Build.0 = Release|Win32
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.All|Win32.ActiveCfg = Release|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64.ActiveCfg = Release|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64.Build.0 = Release|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|Win32.Build.0 = Debug|Win32
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x64.ActiveCfg = Debug|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x64.Build.0 = Debug|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Release|Win32.ActiveCfg = Release|Win32
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Release|Win32.Build.0 = Release|Win32
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Release|x64.ActiveCfg = Release|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Release|x64.Build.0 = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|Win32.ActiveCfg = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64.ActiveCfg = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64.Build.0 = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|Win32.Build.0 = Debug|Win32
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x64.ActiveCfg = Debug|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x64.Build.0 = Debug|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|Win32.ActiveCfg = Release|Win32
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|Win32.Build.0 = Release|Win32
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|x64.ActiveCfg = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|x64.Build.0 = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|Win32.ActiveCfg = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64.ActiveCfg = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64.Build.0 = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|Win32.Build.0 = Debug|Win32
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x64.ActiveCfg = Debug|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x64.Build.0 = Debug|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|Win32.ActiveCfg = Release|Win32
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|Win32.Build.0 = Release|Win32
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|x64.ActiveCfg = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|x64.Build.0 = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|Win32.ActiveCfg = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64.ActiveCfg = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64.Build.0 = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|Win32.Build.0 = Debug|Win32
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x64.ActiveCfg = Debug|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x64.Build.0 = Debug|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|Win32.ActiveCfg = Release|Win32
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|Win32.Build.0 = Release|Win32
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|x64.ActiveCfg = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|x64.Build.0 = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.All|Win32.ActiveCfg = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64.ActiveCfg = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64.Build.0 = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|Win32.Build.0 = Debug|Win32
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x64.ActiveCfg = Debug|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x64.Build.0 = Debug|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|Win32.ActiveCfg = Release|Win32
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|Win32.Build.0 = Release|Win32
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|x64.ActiveCfg = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|x64.Build.0 = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|Win32.ActiveCfg = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64.ActiveCfg = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64.Build.0 = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|Win32.Build.0 = Debug|Win32
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x64.ActiveCfg = Debug|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x64.Build.0 = Debug|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|Win32.ActiveCfg = Release|Win32
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|Win32.Build.0 = Release|Win32
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|x64.ActiveCfg = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|x64.Build.0 = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|Win32.ActiveCfg = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64.ActiveCfg = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64.Build.0 = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|Win32.Build.0 = Debug|Win32
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x64.ActiveCfg = Debug|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x64.Build.0 = Debug|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|Win32.ActiveCfg = Release|Win32
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|Win32.Build.0 = Release|Win32
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|x64.ActiveCfg = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|x64.Build.0 = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|Win32.ActiveCfg = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64.ActiveCfg = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64.Build.0 = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|Win32.Build.0 = Debug|Win32
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x64.ActiveCfg = Debug|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x64.Build.0 = Debug|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|Win32.ActiveCfg = Release|Win32
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|Win32.Build.0 = Release|Win32
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|x64.ActiveCfg = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|x64.Build.0 = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|Win32.ActiveCfg = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64.ActiveCfg = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64.Build.0 = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|Win32.Build.0 = Debug|Win32
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x64.ActiveCfg = Debug|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x64.Build.0 = Debug|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|Win32.ActiveCfg = Release|Win32
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|Win32.Build.0 = Release|Win32
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x64.ActiveCfg = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x64.Build.0 = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|Win32.ActiveCfg = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x64.ActiveCfg = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x64.Build.0 = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.Build.0 = Debug|Win32
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x64.ActiveCfg = Debug|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x64.Build.0 = Debug|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|Win32.ActiveCfg = Release|Win32
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|Win32.Build.0 = Release|Win32
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x64.ActiveCfg = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x64.Build.0 = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|Win32.ActiveCfg = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64.ActiveCfg = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64.Build.0 = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|Win32.Build.0 = Debug|Win32
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64.ActiveCfg = Debug|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64.Build.0 = Debug|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|Win32.ActiveCfg = Release|Win32
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|Win32.Build.0 = Release|Win32
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x64.ActiveCfg = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x64.Build.0 = Release|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|Win32.ActiveCfg = Release_WM5_PPC_ARM|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x64.ActiveCfg = Release_WM5_PPC_ARM|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x64.Build.0 = Release_WM5_PPC_ARM|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|Win32.Build.0 = Debug|Win32
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|x64.ActiveCfg = Debug|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|x64.Build.0 = Debug|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|Win32.ActiveCfg = Release|Win32
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|Win32.Build.0 = Release|Win32
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|x64.ActiveCfg = Release|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|x64.Build.0 = Release|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|Win32.ActiveCfg = Release_Static_SSE|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x64.ActiveCfg = Release_Static_SSE|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x64.Build.0 = Release_Static_SSE|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|Win32.Build.0 = Debug|Win32
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|x64.ActiveCfg = Debug|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|x64.Build.0 = Debug|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|Win32.ActiveCfg = Release|Win32
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|Win32.Build.0 = Release|Win32
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x64.ActiveCfg = Release|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x64.Build.0 = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|Win32.ActiveCfg = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64.ActiveCfg = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64.Build.0 = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|Win32.Build.0 = Debug|Win32
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64.ActiveCfg = Debug|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64.Build.0 = Debug|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|Win32.ActiveCfg = Release|Win32
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|Win32.Build.0 = Release|Win32
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x64.ActiveCfg = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x64.Build.0 = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.All|Win32.ActiveCfg = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64.ActiveCfg = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64.Build.0 = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|Win32.Build.0 = Debug|Win32
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x64.ActiveCfg = Debug|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x64.Build.0 = Debug|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Release|Win32.ActiveCfg = Release|Win32
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Release|Win32.Build.0 = Release|Win32
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Release|x64.ActiveCfg = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Release|x64.Build.0 = Release|x64
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|Win32.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|Win32.Build.0 = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|x64.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|x64.ActiveCfg = Debug|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release|Win32.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release|x64.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|Win32.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|Win32.Build.0 = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|x64.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.Debug|x64.ActiveCfg = Debug|x64
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.Release|Win32.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.Release|x64.ActiveCfg = Release|Win32
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|Win32.ActiveCfg = All|Win32
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|Win32.Build.0 = All|Win32
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x64.ActiveCfg = All|Win32
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x64.ActiveCfg = Debug|x64
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|Win32.ActiveCfg = Release|Win32
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x64.ActiveCfg = Release|x64
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|Win32.ActiveCfg = Release|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|x64.ActiveCfg = Release|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x64.ActiveCfg = Debug|x64
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|Win32.ActiveCfg = Release|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x64.ActiveCfg = Release|x64
-+ {48414740-C693-4968-9846-EE058020C64F}.All|Win32.ActiveCfg = Release|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.All|x64.ActiveCfg = Release|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.Debug|x64.ActiveCfg = Debug|x64
-+ {48414740-C693-4968-9846-EE058020C64F}.Release|Win32.ActiveCfg = Release|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.Release|x64.ActiveCfg = Release|x64
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|Win32.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|Win32.Build.0 = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|x64.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|Win32.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|Win32.Build.0 = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x64.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x64.Build.0 = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|Win32.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|Win32.Build.0 = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|x64.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|x64.Build.0 = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|Win32.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|Win32.Build.0 = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|x64.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|Win32.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|Win32.Build.0 = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x64.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x64.Build.0 = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|Win32.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|Win32.Build.0 = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|x64.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|x64.Build.0 = All|Win32
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|Win32.ActiveCfg = Release|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64.ActiveCfg = Release|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64.Build.0 = Release|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|x64.ActiveCfg = Debug|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release|Win32.ActiveCfg = Release|Win32
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release|x64.ActiveCfg = Release|x64
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|Win32.ActiveCfg = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|Win32.Build.0 = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|x64.ActiveCfg = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x64.ActiveCfg = Debug|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|Win32.ActiveCfg = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x64.ActiveCfg = Release|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.All|Win32.ActiveCfg = Release|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.All|x64.ActiveCfg = Release|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|x64.ActiveCfg = Debug|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.Release|Win32.ActiveCfg = Release|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.Release|x64.ActiveCfg = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|Win32.ActiveCfg = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|Win32.Build.0 = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64.ActiveCfg = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64.Build.0 = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|Win32.Build.0 = Debug|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x64.ActiveCfg = Debug|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x64.Build.0 = Debug|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|Win32.ActiveCfg = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|Win32.Build.0 = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|x64.ActiveCfg = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|x64.Build.0 = Release|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|Win32.ActiveCfg = Release|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|x64.ActiveCfg = Release|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|x64.ActiveCfg = Debug|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release|Win32.ActiveCfg = Release|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release|x64.ActiveCfg = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|Win32.ActiveCfg = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|Win32.Build.0 = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64.ActiveCfg = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64.Build.0 = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|Win32.Build.0 = Debug|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x64.ActiveCfg = Debug|x64
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x64.Build.0 = Debug|x64
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|Win32.ActiveCfg = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|Win32.Build.0 = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|x64.ActiveCfg = Release|x64
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|x64.Build.0 = Release|x64
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|Win32.ActiveCfg = Release|Win32
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|x64.ActiveCfg = Release|Win32
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|x64.ActiveCfg = Debug|x64
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release|Win32.ActiveCfg = Release|Win32
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release|x64.ActiveCfg = Release|x64
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|Win32.ActiveCfg = Release|Win32
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|x64.ActiveCfg = Release|Win32
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|x64.ActiveCfg = Debug|x64
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release|Win32.ActiveCfg = Release|Win32
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release|x64.ActiveCfg = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|Win32.ActiveCfg = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64.ActiveCfg = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64.Build.0 = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|Win32.Build.0 = Debug|Win32
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x64.ActiveCfg = Debug|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x64.Build.0 = Debug|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|Win32.ActiveCfg = Release|Win32
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|Win32.Build.0 = Release|Win32
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|x64.ActiveCfg = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|x64.Build.0 = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|Win32.ActiveCfg = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|Win32.Build.0 = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64.ActiveCfg = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64.Build.0 = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|Win32.Build.0 = Debug|Win32
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x64.ActiveCfg = Debug|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x64.Build.0 = Debug|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|Win32.ActiveCfg = Release|Win32
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|Win32.Build.0 = Release|Win32
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|x64.ActiveCfg = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|x64.Build.0 = Release|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|Win32.ActiveCfg = Release|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|x64.ActiveCfg = Release|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|Win32.Build.0 = Debug|Win32
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x64.ActiveCfg = Debug|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x64.Build.0 = Debug|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|Win32.ActiveCfg = Release|Win32
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|Win32.Build.0 = Release|Win32
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|x64.ActiveCfg = Release|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|x64.Build.0 = Release|x64
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|Win32.ActiveCfg = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|Win32.Build.0 = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|x64.ActiveCfg = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|Win32.Build.0 = Debug|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x64.ActiveCfg = Debug|x64
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x64.Build.0 = Debug|x64
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|Win32.ActiveCfg = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|Win32.Build.0 = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|x64.ActiveCfg = Release|x64
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|x64.Build.0 = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|Win32.ActiveCfg = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64.ActiveCfg = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64.Build.0 = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|Win32.Build.0 = Debug|Win32
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x64.ActiveCfg = Debug|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x64.Build.0 = Debug|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|Win32.ActiveCfg = Release|Win32
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|Win32.Build.0 = Release|Win32
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|x64.ActiveCfg = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|x64.Build.0 = Release|x64
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|Win32.ActiveCfg = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|Win32.Build.0 = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|x64.ActiveCfg = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|Win32.Build.0 = Debug|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x64.ActiveCfg = Debug|x64
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x64.Build.0 = Debug|x64
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|Win32.ActiveCfg = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|Win32.Build.0 = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|x64.ActiveCfg = Release|x64
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|x64.Build.0 = Release|x64
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|Win32.ActiveCfg = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|Win32.Build.0 = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|x64.ActiveCfg = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|Win32.Build.0 = Debug|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x64.ActiveCfg = Debug|x64
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x64.Build.0 = Debug|x64
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|Win32.ActiveCfg = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|Win32.Build.0 = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|x64.ActiveCfg = Release|x64
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|x64.Build.0 = Release|x64
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|Win32.ActiveCfg = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|Win32.Build.0 = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|x64.ActiveCfg = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|Win32.Build.0 = Debug|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x64.ActiveCfg = Debug|x64
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x64.Build.0 = Debug|x64
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|Win32.ActiveCfg = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|Win32.Build.0 = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|x64.ActiveCfg = Release|x64
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|x64.Build.0 = Release|x64
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|Win32.ActiveCfg = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|Win32.Build.0 = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|x64.ActiveCfg = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|Win32.Build.0 = Debug|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x64.ActiveCfg = Debug|x64
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x64.Build.0 = Debug|x64
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|Win32.ActiveCfg = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|Win32.Build.0 = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|x64.ActiveCfg = Release|x64
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|x64.Build.0 = Release|x64
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|Win32.ActiveCfg = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|Win32.Build.0 = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|x64.ActiveCfg = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|Win32.Build.0 = Debug|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x64.ActiveCfg = Debug|x64
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x64.Build.0 = Debug|x64
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|Win32.ActiveCfg = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|Win32.Build.0 = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|x64.ActiveCfg = Release|x64
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|x64.Build.0 = Release|x64
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|Win32.ActiveCfg = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|Win32.Build.0 = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|x64.ActiveCfg = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|Win32.Build.0 = Debug|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x64.ActiveCfg = Debug|x64
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x64.Build.0 = Debug|x64
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|Win32.ActiveCfg = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|Win32.Build.0 = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|x64.ActiveCfg = Release|x64
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|x64.Build.0 = Release|x64
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.All|Win32.ActiveCfg = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.All|Win32.Build.0 = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.All|x64.ActiveCfg = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|Win32.Build.0 = Debug|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x64.ActiveCfg = Debug|x64
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x64.Build.0 = Debug|x64
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|Win32.ActiveCfg = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|Win32.Build.0 = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|x64.ActiveCfg = Release|x64
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|x64.Build.0 = Release|x64
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|Win32.ActiveCfg = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|Win32.Build.0 = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|x64.ActiveCfg = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|Win32.Build.0 = Debug|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x64.ActiveCfg = Debug|x64
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x64.Build.0 = Debug|x64
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|Win32.ActiveCfg = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|Win32.Build.0 = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|x64.ActiveCfg = Release|x64
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|x64.Build.0 = Release|x64
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|Win32.ActiveCfg = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|Win32.Build.0 = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|x64.ActiveCfg = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|Win32.Build.0 = Debug|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x64.ActiveCfg = Debug|x64
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x64.Build.0 = Debug|x64
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|Win32.ActiveCfg = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|Win32.Build.0 = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|x64.ActiveCfg = Release|x64
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|x64.Build.0 = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|Win32.ActiveCfg = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x64.ActiveCfg = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x64.Build.0 = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|Win32.Build.0 = Debug|Win32
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|x64.ActiveCfg = Debug|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|x64.Build.0 = Debug|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|Win32.ActiveCfg = Release|Win32
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|Win32.Build.0 = Release|Win32
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|x64.ActiveCfg = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|x64.Build.0 = Release|x64
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|Win32.ActiveCfg = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|Win32.Build.0 = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|x64.ActiveCfg = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|Win32.Build.0 = Debug|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x64.ActiveCfg = Debug|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x64.Build.0 = Debug|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|Win32.ActiveCfg = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|Win32.Build.0 = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|x64.ActiveCfg = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|x64.Build.0 = Release|Win32
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|Win32.ActiveCfg = Release|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64.ActiveCfg = Release|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64.Build.0 = Release|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|Win32.Build.0 = Debug|Win32
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x64.ActiveCfg = Debug|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x64.Build.0 = Debug|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|Win32.ActiveCfg = Release|Win32
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|Win32.Build.0 = Release|Win32
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|x64.ActiveCfg = Release|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|x64.Build.0 = Release|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|Win32.ActiveCfg = Release Passthrough|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64.ActiveCfg = Release Passthrough|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64.Build.0 = Release Passthrough|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|Win32.Build.0 = Debug|Win32
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x64.ActiveCfg = Debug|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x64.Build.0 = Debug|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|Win32.ActiveCfg = Release|Win32
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|Win32.Build.0 = Release|Win32
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|x64.ActiveCfg = Release|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|x64.Build.0 = Release|x64
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|Win32.ActiveCfg = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|Win32.Build.0 = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|x64.ActiveCfg = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|x64.ActiveCfg = Debug|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release|Win32.ActiveCfg = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release|x64.ActiveCfg = Release|Win32
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|Win32.ActiveCfg = Release|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64.ActiveCfg = Release|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64.Build.0 = Release|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|Win32.Build.0 = Debug|Win32
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x64.ActiveCfg = Debug|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x64.Build.0 = Debug|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|Win32.ActiveCfg = Release|Win32
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|Win32.Build.0 = Release|Win32
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|x64.ActiveCfg = Release|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|x64.Build.0 = Release|x64
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|Win32.ActiveCfg = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|Win32.Build.0 = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|x64.ActiveCfg = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|Win32.Build.0 = Debug|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x64.ActiveCfg = Debug|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x64.Build.0 = Debug|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|Win32.ActiveCfg = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|Win32.Build.0 = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|x64.ActiveCfg = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|x64.Build.0 = Release|Win32
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|Win32.ActiveCfg = Release|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64.ActiveCfg = Release|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64.Build.0 = Release|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|Win32.Build.0 = Debug|Win32
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x64.ActiveCfg = Debug|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x64.Build.0 = Debug|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|Win32.ActiveCfg = Release|Win32
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|Win32.Build.0 = Release|Win32
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|x64.ActiveCfg = Release|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|x64.Build.0 = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|Win32.ActiveCfg = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64.ActiveCfg = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64.Build.0 = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|Win32.Build.0 = Debug|Win32
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x64.ActiveCfg = Debug|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x64.Build.0 = Debug|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|Win32.ActiveCfg = Release|Win32
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|Win32.Build.0 = Release|Win32
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|x64.ActiveCfg = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|x64.Build.0 = Release|x64
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|Win32.ActiveCfg = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|Win32.Build.0 = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|x64.ActiveCfg = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|Win32.Build.0 = Debug|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x64.ActiveCfg = Debug|x64
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x64.Build.0 = Debug|x64
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|Win32.ActiveCfg = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|Win32.Build.0 = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|x64.ActiveCfg = Release|x64
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|x64.Build.0 = Release|x64
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|Win32.ActiveCfg = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|Win32.Build.0 = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|x64.ActiveCfg = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|Win32.Build.0 = Debug|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x64.ActiveCfg = Debug|x64
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x64.Build.0 = Debug|x64
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|Win32.ActiveCfg = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|Win32.Build.0 = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|x64.ActiveCfg = Release|x64
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|x64.Build.0 = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|Win32.ActiveCfg = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64.ActiveCfg = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64.Build.0 = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|Win32.Build.0 = Debug|Win32
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x64.ActiveCfg = Debug|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x64.Build.0 = Debug|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|Win32.ActiveCfg = Release|Win32
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|Win32.Build.0 = Release|Win32
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|x64.ActiveCfg = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|x64.Build.0 = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|Win32.ActiveCfg = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64.ActiveCfg = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64.Build.0 = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|Win32.Build.0 = Debug|Win32
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x64.ActiveCfg = Debug|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x64.Build.0 = Debug|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|Win32.ActiveCfg = Release|Win32
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|Win32.Build.0 = Release|Win32
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|x64.ActiveCfg = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|x64.Build.0 = Release|x64
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|Win32.ActiveCfg = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|Win32.Build.0 = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|x64.ActiveCfg = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|Win32.Build.0 = Debug|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|x64.ActiveCfg = Debug|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|x64.Build.0 = Debug|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|Win32.ActiveCfg = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|Win32.Build.0 = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|x64.ActiveCfg = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|x64.Build.0 = Release|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|Win32.ActiveCfg = Release|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|Win32.Build.0 = Release|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|x64.ActiveCfg = Release|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|Win32.Build.0 = Debug|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|x64.ActiveCfg = Debug|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|x64.Build.0 = Debug|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|Win32.ActiveCfg = Release|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|Win32.Build.0 = Release|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|x64.ActiveCfg = Release|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|x64.Build.0 = Release|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|Win32.ActiveCfg = Release|Win32
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|Win32.Build.0 = Release|Win32
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|x64.ActiveCfg = Release|Win32
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|Win32.Build.0 = Debug|Win32
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|x64.ActiveCfg = Debug|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|x64.Build.0 = Debug|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|Win32.ActiveCfg = Release|Win32
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|Win32.Build.0 = Release|Win32
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|x64.ActiveCfg = Release|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|x64.Build.0 = Release|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|Win32.ActiveCfg = Release|Win32
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|Win32.Build.0 = Release|Win32
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|x64.ActiveCfg = Release|Win32
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|Win32.Build.0 = Debug|Win32
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|x64.ActiveCfg = Debug|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|x64.Build.0 = Debug|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|Win32.ActiveCfg = Release|Win32
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|Win32.Build.0 = Release|Win32
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|x64.ActiveCfg = Release|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|x64.Build.0 = Release|x64
-+ {42E721FD-43D6-4B04-A34B-42567199FFB8}.All|Win32.ActiveCfg = Release|x64
-+ {42E721FD-43D6-4B04-A34B-42567199FFB8}.All|x64.ActiveCfg = Release|x64
-+ {42E721FD-43D6-4B04-A34B-42567199FFB8}.All|x64.Build.0 = Release|x64
-+ {42E721FD-43D6-4B04-A34B-42567199FFB8}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {42E721FD-43D6-4B04-A34B-42567199FFB8}.Debug|x64.ActiveCfg = Debug|x64
-+ {42E721FD-43D6-4B04-A34B-42567199FFB8}.Release|Win32.ActiveCfg = Release|Win32
-+ {42E721FD-43D6-4B04-A34B-42567199FFB8}.Release|x64.ActiveCfg = Release|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|Win32.ActiveCfg = Release|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x64.ActiveCfg = Release|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x64.Build.0 = Release|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|Win32.Build.0 = Debug|Win32
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|x64.ActiveCfg = Debug|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|x64.Build.0 = Debug|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|Win32.ActiveCfg = Release|Win32
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|Win32.Build.0 = Release|Win32
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64.ActiveCfg = Release|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64.Build.0 = Release|x64
-+ {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.All|Win32.ActiveCfg = Release|x64
-+ {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.All|x64.ActiveCfg = Release|x64
-+ {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.All|x64.Build.0 = Release|x64
-+ {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Debug|Win32.Build.0 = Debug|Win32
-+ {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Debug|x64.ActiveCfg = Debug|x64
-+ {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Debug|x64.Build.0 = Debug|x64
-+ {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Release|Win32.ActiveCfg = Release|Win32
-+ {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Release|Win32.Build.0 = Release|Win32
-+ {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Release|x64.ActiveCfg = Release|x64
-+ {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169}.Release|x64.Build.0 = Release|x64
-+ {BDA173DB-F8EF-4270-9553-B453AF92E43A}.All|Win32.ActiveCfg = Release|x64
-+ {BDA173DB-F8EF-4270-9553-B453AF92E43A}.All|x64.ActiveCfg = Release|x64
-+ {BDA173DB-F8EF-4270-9553-B453AF92E43A}.All|x64.Build.0 = Release|x64
-+ {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Debug|Win32.Build.0 = Debug|Win32
-+ {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Debug|x64.ActiveCfg = Debug|x64
-+ {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Debug|x64.Build.0 = Debug|x64
-+ {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Release|Win32.ActiveCfg = Release|Win32
-+ {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Release|Win32.Build.0 = Release|Win32
-+ {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Release|x64.ActiveCfg = Release|x64
-+ {BDA173DB-F8EF-4270-9553-B453AF92E43A}.Release|x64.Build.0 = Release|x64
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|Win32.ActiveCfg = Release|Win32
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|Win32.Build.0 = Release|Win32
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x64.ActiveCfg = Release|Win32
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|x64.ActiveCfg = Debug|x64
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|Win32.ActiveCfg = Release|Win32
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|x64.ActiveCfg = Release|x64
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|Win32.ActiveCfg = Debug|Win32
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|Win32.Build.0 = Debug|Win32
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x64.ActiveCfg = Debug|Win32
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|x64.ActiveCfg = Debug|x64
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|Win32.ActiveCfg = Release|Win32
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|x64.ActiveCfg = Release|x64
-+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.All|Win32.ActiveCfg = Debug|x64
-+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.All|x64.ActiveCfg = Debug|x64
-+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.All|x64.Build.0 = Debug|x64
-+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|Win32.Build.0 = Debug|Win32
-+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|x64.ActiveCfg = Debug|x64
-+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|x64.Build.0 = Debug|x64
-+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|Win32.ActiveCfg = Release|Win32
-+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|Win32.Build.0 = Release|Win32
-+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|x64.ActiveCfg = Release|x64
-+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|x64.Build.0 = Release|x64
-+ {21A7DA70-555E-49FA-942B-D84A38B61243}.All|Win32.ActiveCfg = Release|Win32
-+ {21A7DA70-555E-49FA-942B-D84A38B61243}.All|Win32.Build.0 = Release|Win32
-+ {21A7DA70-555E-49FA-942B-D84A38B61243}.All|x64.ActiveCfg = Release|Win32
-+ {21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|Win32.Build.0 = Debug|Win32
-+ {21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|x64.ActiveCfg = Debug|Win32
-+ {21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|x64.Build.0 = Debug|Win32
-+ {21A7DA70-555E-49FA-942B-D84A38B61243}.Release|Win32.ActiveCfg = Release|Win32
-+ {21A7DA70-555E-49FA-942B-D84A38B61243}.Release|Win32.Build.0 = Release|Win32
-+ {21A7DA70-555E-49FA-942B-D84A38B61243}.Release|x64.ActiveCfg = Release|Win32
-+ {21A7DA70-555E-49FA-942B-D84A38B61243}.Release|x64.Build.0 = Release|Win32
-+ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.All|Win32.ActiveCfg = Release|x64
-+ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.All|x64.ActiveCfg = Release|x64
-+ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.All|x64.Build.0 = Release|x64
-+ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Debug|Win32.Build.0 = Debug|Win32
-+ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Debug|x64.ActiveCfg = Debug|x64
-+ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Debug|x64.Build.0 = Debug|x64
-+ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Release|Win32.ActiveCfg = Release|Win32
-+ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Release|Win32.Build.0 = Release|Win32
-+ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Release|x64.ActiveCfg = Release|x64
-+ {A4D67895-E709-40C7-82B6-DE1D12DDDE04}.Release|x64.Build.0 = Release|x64
-+ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.All|Win32.ActiveCfg = Release|x64
-+ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.All|x64.ActiveCfg = Release|x64
-+ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.All|x64.Build.0 = Release|x64
-+ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Debug|Win32.Build.0 = Debug|Win32
-+ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Debug|x64.ActiveCfg = Debug|x64
-+ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Debug|x64.Build.0 = Debug|x64
-+ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Release|Win32.ActiveCfg = Release|Win32
-+ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Release|Win32.Build.0 = Release|Win32
-+ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Release|x64.ActiveCfg = Release|x64
-+ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}.Release|x64.Build.0 = Release|x64
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.All|Win32.ActiveCfg = Debug|x64
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.All|x64.ActiveCfg = Debug|x64
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.All|x64.Build.0 = Debug|x64
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Debug|Win32.Build.0 = Debug|Win32
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Debug|x64.ActiveCfg = Debug|x64
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Debug|x64.Build.0 = Debug|x64
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Release|Win32.ActiveCfg = Release|Win32
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Release|Win32.Build.0 = Release|Win32
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Release|x64.ActiveCfg = Release|x64
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888}.Release|x64.Build.0 = Release|x64
-+ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.All|Win32.ActiveCfg = Release|x64
-+ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.All|x64.ActiveCfg = Release|x64
-+ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.All|x64.Build.0 = Release|x64
-+ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Debug|Win32.Build.0 = Debug|Win32
-+ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Debug|x64.ActiveCfg = Debug|x64
-+ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Debug|x64.Build.0 = Debug|x64
-+ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Release|Win32.ActiveCfg = Release|Win32
-+ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Release|Win32.Build.0 = Release|Win32
-+ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Release|x64.ActiveCfg = Release|x64
-+ {510BDAA8-C04D-47DB-8482-E6AF380D3E07}.Release|x64.Build.0 = Release|x64
-+ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.All|Win32.ActiveCfg = Release|x64
-+ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.All|x64.ActiveCfg = Release|x64
-+ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.All|x64.Build.0 = Release|x64
-+ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Debug|Win32.Build.0 = Debug|Win32
-+ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Debug|x64.ActiveCfg = Debug|x64
-+ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Debug|x64.Build.0 = Debug|x64
-+ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Release|Win32.ActiveCfg = Release|Win32
-+ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Release|Win32.Build.0 = Release|Win32
-+ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Release|x64.ActiveCfg = Release|x64
-+ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}.Release|x64.Build.0 = Release|x64
-+ EndGlobalSection
-+ GlobalSection(SolutionProperties) = preSolution
-+ HideSolutionNode = FALSE
-+ EndGlobalSection
-+ GlobalSection(NestedProjects) = preSolution
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {0B6C905B-142E-4999-B39D-92FF7951E921} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {48414740-C693-4968-9846-EE058020C64F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {C24FB505-05D7-4319-8485-7540B44C8603} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {F6A33240-8F29-48BD-98F0-826995911799} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {42E721FD-43D6-4B04-A34B-42567199FFB8} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {0807C5CB-F6FF-451D-89F0-1F7B2E1D9169} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {BDA173DB-F8EF-4270-9553-B453AF92E43A} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}
-+ {784113EF-44D9-4949-835D-7065D3C7AD08} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}
-+ {05515420-16DE-4E63-BE73-85BE85BA5142} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6} = {A5A27244-AD24-46E5-B01B-840CD296C91D}
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7} = {A5A27244-AD24-46E5-B01B-840CD296C91D}
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B} = {A5A27244-AD24-46E5-B01B-840CD296C91D}
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52} = {A5A27244-AD24-46E5-B01B-840CD296C91D}
-+ {38FE0559-9910-43A8-9E45-3E5004C27692} = {A5A27244-AD24-46E5-B01B-840CD296C91D}
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723} = {CBD81696-EFB4-4D2F-8451-1B8DAA86155A}
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98} = {B8F5B47B-8568-46EB-B320-64C17D2A98BC}
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {028C7278-05D7-4E18-82FE-BE231B844F41} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {692F6330-4D87-4C82-81DF-40DB5892636E} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}
-+ {1C453396-D912-4213-89FD-9B489162B7B5} = {A7AB4405-FDB7-4853-9FBB-1516B1C3D80A}
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909} = {A7AB4405-FDB7-4853-9FBB-1516B1C3D80A}
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950} = {F69A4A6B-9360-4EBB-A280-22AA3C455AC5}
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4} = {F69A4A6B-9360-4EBB-A280-22AA3C455AC5}
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836} = {F69A4A6B-9360-4EBB-A280-22AA3C455AC5}
-+ {89385C74-5860-4174-9CAF-A39E7C48909C} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {1906D736-08BD-4EE1-924F-B536249B9A54} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {94001A0E-A837-445C-8004-F918F10D0226} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {0AD1177E-1FD8-4643-9391-431467A11084} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {419C8F80-D858-4B48-A25C-AF4007608137} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {D0B36172-CD76-454A-9B89-990025266C2A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {62F27B1A-C919-4A70-8478-51F178F3B18F} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {B376D494-D7DD-4B2A-99E2-52916D5A8CD8} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {3783935D-7C0A-4166-A376-C3D8E64F3A9C} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {2DEE4895-1134-439C-B688-52203E57D878} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {E796E337-DE78-4303-8614-9A590862EE95} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {1F0A8A77-E661-418F-BB92-82172AE43803} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {21A7DA70-555E-49FA-942B-D84A38B61243} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0} = {57D119DC-484F-420F-B9E9-8589FD9A8DF8}
-+ {3C90CCF0-2CDD-4A7A-ACFF-208C1E271692} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}
-+ {C7E2382E-2C22-4D18-BF93-80C6A1FFA7AC} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}
-+ {FC71C66E-E268-4EAD-B1F5-F008DC382E83} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}
-+ {8E2E8798-8B6F-4A55-8E4F-4E6FDE40ED26} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}
-+ {09455AA9-C243-4F16-A1A1-A016881A2765} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}
-+ {CDE9B06A-3C27-4987-8FAE-DF1006BC705D} = {DB1024A8-41BF-4AD7-9AE6-13202230D1F3}
-+ {57199684-EC63-4A60-9DC6-11815AF6B413} = {09455AA9-C243-4F16-A1A1-A016881A2765}
-+ {2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C} = {09455AA9-C243-4F16-A1A1-A016881A2765}
-+ {D4A12E4C-DBDA-4614-BA26-3425AE9F60F5} = {09455AA9-C243-4F16-A1A1-A016881A2765}
-+ {765EF1B9-5027-4820-BC37-A44466A51631} = {57199684-EC63-4A60-9DC6-11815AF6B413}
-+ {713E4747-1126-40B1-BD84-58F9A7745423} = {57199684-EC63-4A60-9DC6-11815AF6B413}
-+ {D3E5C8ED-3A6A-4FEA-92A2-48A0BA865358} = {2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C}
-+ {CC3E7F48-2590-49CB-AD8B-BE3650F55462} = {2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C}
-+ {F1B71990-EB04-4EB5-B28A-BC3EB6F7E843} = {D4A12E4C-DBDA-4614-BA26-3425AE9F60F5}
-+ {3DAF028C-AB5B-4183-A01B-DCC43F5A87F0} = {D4A12E4C-DBDA-4614-BA26-3425AE9F60F5}
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A} = {4F227C26-768F-46A3-8684-1D08A46FB374}
-+ {7EB71250-F002-4ED8-92CA-CA218114537A} = {4F227C26-768F-46A3-8684-1D08A46FB374}
-+ {464AAB78-5489-4916-BE51-BF8D61822311} = {4F227C26-768F-46A3-8684-1D08A46FB374}
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870} = {4F227C26-768F-46A3-8684-1D08A46FB374}
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289} = {4F227C26-768F-46A3-8684-1D08A46FB374}
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959} = {4F227C26-768F-46A3-8684-1D08A46FB374}
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {504B3154-7A4F-459D-9877-B951021C3F1F} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {B376D494-D7DD-4B2A-99E2-52916D5A8CD8}
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {B376D494-D7DD-4B2A-99E2-52916D5A8CD8}
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79} = {B376D494-D7DD-4B2A-99E2-52916D5A8CD8}
-+ {A4D67895-E709-40C7-82B6-DE1D12DDDE04} = {3783935D-7C0A-4166-A376-C3D8E64F3A9C}
-+ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B} = {3783935D-7C0A-4166-A376-C3D8E64F3A9C}
-+ {E5A9BCDA-B82D-4B08-B23E-9A782E367888} = {3783935D-7C0A-4166-A376-C3D8E64F3A9C}
-+ {510BDAA8-C04D-47DB-8482-E6AF380D3E07} = {3783935D-7C0A-4166-A376-C3D8E64F3A9C}
-+ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268} = {3783935D-7C0A-4166-A376-C3D8E64F3A9C}
-+ EndGlobalSection
-+EndGlobal
+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {94001A0E-A837-445C-8004-F918F10D0226} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {0AD1177E-1FD8-4643-9391-431467A11084} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+@@ -2876,6 +2890,7 @@ Global
+ {23B4D303-79FC-49E0-89E2-2280E7E28940} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
++ {3783935D-7C0A-4166-A376-C3D8E64F3A9C} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
+ {4F92B672-DADB-4047-8D6A-4BB3796733FD} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
+ {2DEE4895-1134-439C-B688-52203E57D878} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
+@@ -2937,5 +2952,10 @@ Global
+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {B376D494-D7DD-4B2A-99E2-52916D5A8CD8}\r
+ {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {B376D494-D7DD-4B2A-99E2-52916D5A8CD8}\r
+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79} = {B376D494-D7DD-4B2A-99E2-52916D5A8CD8}\r
++ {A4D67895-E709-40C7-82B6-DE1D12DDDE04} = {3783935D-7C0A-4166-A376-C3D8E64F3A9C}\r
++ {2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B} = {3783935D-7C0A-4166-A376-C3D8E64F3A9C}\r
++ {E5A9BCDA-B82D-4B08-B23E-9A782E367888} = {3783935D-7C0A-4166-A376-C3D8E64F3A9C}\r
++ {510BDAA8-C04D-47DB-8482-E6AF380D3E07} = {3783935D-7C0A-4166-A376-C3D8E64F3A9C}\r
++ {3CF7C0E0-07C2-473A-A1E4-2274AEEC1268} = {3783935D-7C0A-4166-A376-C3D8E64F3A9C}\r
+ EndGlobalSection\r
+ EndGlobal\r
diff --git a/Freeswitch.2010.sln b/Freeswitch.2010.sln
-index fd8eda1..dfbf2d7 100644
+index fd8eda1..c232e9a 100644
--- a/Freeswitch.2010.sln
+++ b/Freeswitch.2010.sln
-@@ -1,3921 +1,3955 @@
--\r
--Microsoft Visual Studio Solution File, Format Version 11.00\r
--# Visual Studio 2010\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Codecs", "Codecs", "{F881ADA2-2F1A-4046-9FEB-191D9422D781}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Endpoints", "Endpoints", "{9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Applications", "Applications", "{E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dialplans", "Dialplans", "{C5F182F9-754A-4EC5-B50F-76ED02BE13F4}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Event Handlers", "Event Handlers", "{9ADF1E48-2F5C-4ED7-A893-596259FABFE0}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Formats", "Formats", "{A5A27244-AD24-46E5-B01B-840CD296C91D}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Docs", "Docs", "{CBD81696-EFB4-4D2F-8451-1B8DAA86155A}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Directories", "Directories", "{B8F5B47B-8568-46EB-B320-64C17D2A98BC}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Languages", "Languages", "{0C808854-54D1-4230-BFF5-77B5FD905000}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ASR-TTS", "ASR-TTS", "{4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Loggers", "Loggers", "{A7AB4405-FDB7-4853-9FBB-1516B1C3D80A}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XML Interfaces", "XML Interfaces", "{F69A4A6B-9360-4EBB-A280-22AA3C455AC5}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Libraries", "_Libraries", "{EB910B0D-F27D-4B62-B67B-DE834C99AC5B}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Downloads", "_Downloads", "{C120A020-773F-4EA3-923F-B67AF28B750D}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "say", "say", "{6CD61A1D-797C-470A-BE08-8C31B68BB336}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Config", "_Config", "{57D119DC-484F-420F-B9E9-8589FD9A8DF8}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Default", "Default", "{3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\freeswitch.xml = conf\vanilla\freeswitch.xml\r
-- conf\vanilla\vars.xml = conf\vanilla\vars.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Build System", "_Build System", "{DB1024A8-41BF-4AD7-9AE6-13202230D1F3}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- acsite.m4 = acsite.m4\r
-- bootstrap.sh = bootstrap.sh\r
-- build\buildlib.sh = build\buildlib.sh\r
-- configure.in = configure.in\r
-- Makefile.am = Makefile.am\r
-- build\modmake.rules.in = build\modmake.rules.in\r
-- build\modules.conf.in = build\modules.conf.in\r
-- libs\win32\util.vbs = libs\win32\util.vbs\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "m4", "m4", "{CDE9B06A-3C27-4987-8FAE-DF1006BC705D}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- build\config\ac_cflags_gcc_option.m4 = build\config\ac_cflags_gcc_option.m4\r
-- build\config\ac_cflags_sun_option.m4 = build\config\ac_cflags_sun_option.m4\r
-- build\config\ac_gcc_archflag.m4 = build\config\ac_gcc_archflag.m4\r
-- build\config\ac_gcc_x86_cpuid.m4 = build\config\ac_gcc_x86_cpuid.m4\r
-- build\config\ac_prog_gzip.m4 = build\config\ac_prog_gzip.m4\r
-- build\config\ac_prog_wget.m4 = build\config\ac_prog_wget.m4\r
-- build\config\ax_cc_maxopt.m4 = build\config\ax_cc_maxopt.m4\r
-- build\config\ax_cflags_warn_all_ansi.m4 = build\config\ax_cflags_warn_all_ansi.m4\r
-- build\config\ax_check_compiler_flags.m4 = build\config\ax_check_compiler_flags.m4\r
-- build\config\ax_compiler_vendor.m4 = build\config\ax_compiler_vendor.m4\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "autoload_configs", "autoload_configs", "{3C90CCF0-2CDD-4A7A-ACFF-208C1E271692}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\autoload_configs\alsa.conf.xml = conf\vanilla\autoload_configs\alsa.conf.xml\r
-- conf\vanilla\autoload_configs\conference.conf.xml = conf\vanilla\autoload_configs\conference.conf.xml\r
-- conf\vanilla\autoload_configs\console.conf.xml = conf\vanilla\autoload_configs\console.conf.xml\r
-- conf\vanilla\autoload_configs\dialplan_directory.conf.xml = conf\vanilla\autoload_configs\dialplan_directory.conf.xml\r
-- conf\vanilla\autoload_configs\dingaling.conf.xml = conf\vanilla\autoload_configs\dingaling.conf.xml\r
-- conf\vanilla\autoload_configs\enum.conf.xml = conf\vanilla\autoload_configs\enum.conf.xml\r
-- conf\vanilla\autoload_configs\event_multicast.conf.xml = conf\vanilla\autoload_configs\event_multicast.conf.xml\r
-- conf\vanilla\autoload_configs\event_socket.conf.xml = conf\vanilla\autoload_configs\event_socket.conf.xml\r
-- conf\vanilla\autoload_configs\ivr.conf.xml = conf\vanilla\autoload_configs\ivr.conf.xml\r
-- conf\vanilla\autoload_configs\java.conf.xml = conf\vanilla\autoload_configs\java.conf.xml\r
-- conf\vanilla\autoload_configs\limit.conf.xml = conf\vanilla\autoload_configs\limit.conf.xml\r
-- conf\vanilla\autoload_configs\local_stream.conf.xml = conf\vanilla\autoload_configs\local_stream.conf.xml\r
-- conf\vanilla\autoload_configs\logfile.conf.xml = conf\vanilla\autoload_configs\logfile.conf.xml\r
-- conf\vanilla\autoload_configs\modules.conf.xml = conf\vanilla\autoload_configs\modules.conf.xml\r
-- conf\vanilla\autoload_configs\openmrcp.conf.xml = conf\vanilla\autoload_configs\openmrcp.conf.xml\r
-- conf\vanilla\autoload_configs\portaudio.conf.xml = conf\vanilla\autoload_configs\portaudio.conf.xml\r
-- conf\vanilla\autoload_configs\rss.conf.xml = conf\vanilla\autoload_configs\rss.conf.xml\r
-- conf\vanilla\autoload_configs\sofia.conf.xml = conf\vanilla\autoload_configs\sofia.conf.xml\r
-- conf\vanilla\autoload_configs\spidermonkey.conf.xml = conf\vanilla\autoload_configs\spidermonkey.conf.xml\r
-- conf\vanilla\autoload_configs\switch.conf.xml = conf\vanilla\autoload_configs\switch.conf.xml\r
-- conf\vanilla\autoload_configs\syslog.conf.xml = conf\vanilla\autoload_configs\syslog.conf.xml\r
-- conf\vanilla\autoload_configs\voicemail.conf.xml = conf\vanilla\autoload_configs\voicemail.conf.xml\r
-- conf\vanilla\autoload_configs\wanpipe.conf.xml = conf\vanilla\autoload_configs\wanpipe.conf.xml\r
-- conf\vanilla\autoload_configs\woomera.conf.xml = conf\vanilla\autoload_configs\woomera.conf.xml\r
-- conf\vanilla\autoload_configs\xml_cdr.conf.xml = conf\vanilla\autoload_configs\xml_cdr.conf.xml\r
-- conf\vanilla\autoload_configs\xml_curl.conf.xml = conf\vanilla\autoload_configs\xml_curl.conf.xml\r
-- conf\vanilla\autoload_configs\xml_rpc.conf.xml = conf\vanilla\autoload_configs\xml_rpc.conf.xml\r
-- conf\vanilla\autoload_configs\zeroconf.conf.xml = conf\vanilla\autoload_configs\zeroconf.conf.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "dialplan", "dialplan", "{C7E2382E-2C22-4D18-BF93-80C6A1FFA7AC}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\dialplan\default.xml = conf\vanilla\dialplan\default.xml\r
-- conf\vanilla\dialplan\public.xml = conf\vanilla\dialplan\public.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "directory", "directory", "{FC71C66E-E268-4EAD-B1F5-F008DC382E83}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\directory\default.xml = conf\vanilla\directory\default.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "sip_profiles", "sip_profiles", "{8E2E8798-8B6F-4A55-8E4F-4E6FDE40ED26}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\sip_profiles\external.xml = conf\vanilla\sip_profiles\external.xml\r
-- conf\vanilla\sip_profiles\internal.xml = conf\vanilla\sip_profiles\internal.xml\r
-- conf\vanilla\sip_profiles\nat.xml = conf\vanilla\sip_profiles\nat.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "lang", "lang", "{09455AA9-C243-4F16-A1A1-A016881A2765}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\directory\default.xml = conf\vanilla\directory\default.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "en", "en", "{57199684-EC63-4A60-9DC6-11815AF6B413}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\en\en.xml = conf\vanilla\lang\en\en.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "de", "de", "{2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\de\de.xml = conf\vanilla\lang\de\de.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "fr", "fr", "{D4A12E4C-DBDA-4614-BA26-3425AE9F60F5}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\fr\fr.xml = conf\vanilla\lang\fr\fr.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "demo", "demo", "{D3E5C8ED-3A6A-4FEA-92A2-48A0BA865358}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\de\demo\demo.xml = conf\vanilla\lang\de\demo\demo.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "vm", "vm", "{CC3E7F48-2590-49CB-AD8B-BE3650F55462}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\de\vm\tts.xml = conf\vanilla\lang\de\vm\tts.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "demo", "demo", "{765EF1B9-5027-4820-BC37-A44466A51631}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\en\demo\demo.xml = conf\vanilla\lang\en\demo\demo.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "vm", "vm", "{713E4747-1126-40B1-BD84-58F9A7745423}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\en\vm\sounds.xml = conf\vanilla\lang\en\vm\sounds.xml\r
-- conf\vanilla\lang\en\vm\tts.xml = conf\vanilla\lang\en\vm\tts.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "demo", "demo", "{F1B71990-EB04-4EB5-B28A-BC3EB6F7E843}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\fr\demo\demo.xml = conf\vanilla\lang\fr\demo\demo.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "vm", "vm", "{3DAF028C-AB5B-4183-A01B-DCC43F5A87F0}"\r
-- ProjectSection(SolutionItems) = preProject\r
-- conf\vanilla\lang\fr\vm\sounds.xml = conf\vanilla\lang\fr\vm\sounds.xml\r
-- EndProjectSection\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Sound Files", "Sound Files", "{4F227C26-768F-46A3-8684-1D08A46FB374}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "unimrcp", "unimrcp", "{62F27B1A-C919-4A70-8478-51F178F3B18F}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FreeSwitchConsole", "w32\Console\FreeSwitchConsole.2010.vcxproj", "{1AF3A893-F7BE-43DD-B697-8AB2397C0D67}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FreeSwitchCoreLib", "w32\Library\FreeSwitchCore.2010.vcxproj", "{202D7A4E-760D-4D0E-AFA1-D7459CED30FF}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_g729", "src\mod\codecs\mod_g729\mod_g729.2010.vcxproj", "{1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_sndfile", "src\mod\formats\mod_sndfile\mod_sndfile.2010.vcxproj", "{AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_PortAudio", "src\mod\endpoints\mod_portaudio\mod_PortAudio.2010.vcxproj", "{5FD31A25-5D83-4794-8BEE-904DAD84CE71}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_speex", "src\mod\codecs\mod_speex\mod_speex.2010.vcxproj", "{5580D60E-0F77-4716-9CD4-B8E5986FA375}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "docs", "docs\docs.2010.vcxproj", "{1A1FF289-4FD6-4285-A422-D31DD67A4723}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dialplan_xml", "src\mod\dialplans\mod_dialplan_xml\mod_dialplan_xml.2010.vcxproj", "{07113B25-D3AF-4E04-BA77-4CD1171F022C}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_ldap", "src\mod\directories\mod_ldap\mod_ldap.2010.vcxproj", "{EC3E5C7F-EE09-47E2-80FE-546363D14A98}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dialplan_directory", "src\mod\dialplans\mod_dialplan_directory\mod_dialplan_directory.2010.vcxproj", "{A27CCA23-1541-4337-81A4-F0A6413078A0}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_event_multicast", "src\mod\event_handlers\mod_event_multicast\mod_event_multicast.2010.vcxproj", "{784113EF-44D9-4949-835D-7065D3C7AD08}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libteletone", "libs\libteletone\libteletone.2010.vcxproj", "{89385C74-5860-4174-9CAF-A39E7C48909C}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey", "src\mod\languages\mod_spidermonkey\mod_spidermonkey.2010.vcxproj", "{1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_cepstral", "src\mod\asr_tts\mod_cepstral\mod_cepstral.2010.vcxproj", "{692F6330-4D87-4C82-81DF-40DB5892636E}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_ilbc", "src\mod\codecs\mod_ilbc\mod_ilbc.2010.vcxproj", "{D3EC0AFF-76FC-4210-A825-9A17410660A3}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dingaling", "src\mod\endpoints\mod_dingaling\mod_dingaling.2010.vcxproj", "{FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_commands", "src\mod\applications\mod_commands\mod_commands.2010.vcxproj", "{30A5B29C-983E-4580-9FD0-D647CCDCC7EB}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_console", "src\mod\loggers\mod_console\mod_console.2010.vcxproj", "{1C453396-D912-4213-89FD-9B489162B7B5}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_rpc", "src\mod\xml_int\mod_xml_rpc\mod_xml_rpc.2010.vcxproj", "{CBEC7225-0C21-4DA8-978E-1F158F8AD950}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_rss", "src\mod\applications\mod_rss\mod_rss.2010.vcxproj", "{B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_conference", "src\mod\applications\mod_conference\mod_conference.2010.vcxproj", "{C24FB505-05D7-4319-8485-7540B44C8603}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dptools", "src\mod\applications\mod_dptools\mod_dptools.2010.vcxproj", "{B5881A85-FE70-4F64-8607-2CAAE52669C6}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_event_socket", "src\mod\event_handlers\mod_event_socket\mod_event_socket.2010.vcxproj", "{05515420-16DE-4E63-BE73-85BE85BA5142}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libdingaling", "libs\libdingaling\libdingaling.2010.vcxproj", "{1906D736-08BD-4EE1-924F-B536249B9A54}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsrtp", "libs\srtp\libsrtp.2010.vcxproj", "{EEF031CB-FED8-451E-A471-91EC8D4F6750}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsqlite", "libs\win32\sqlite\sqlite.2010.vcxproj", "{6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpcre", "libs\win32\pcre\libpcre.2010.vcxproj", "{8D04B550-D240-4A44-8A18-35DA3F7038D9}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpcre Generate pcre_chartables.c", "libs\win32\pcre\pcre_chartables.c.2010.vcxproj", "{1CED5987-A529-46DC-B30F-870D85FF9C94}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libapr", "libs\win32\apr\libapr.2010.vcxproj", "{F6C55D93-B927-4483-BB69-15AEF3DD2DFF}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libaprutil", "libs\win32\apr-util\libaprutil.2010.vcxproj", "{F057DA7F-79E5-4B00-845C-EF446EF055E3}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "iksemel", "libs\win32\iksemel\iksemel.2010.vcxproj", "{E727E8F6-935D-46FE-8B0E-37834748A0E3}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsndfile", "libs\win32\libsndfile\libsndfile.2010.vcxproj", "{3D0370CA-BED2-4657-A475-32375CBCB6E4}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curllib", "libs\win32\curl\curllib.2010.vcxproj", "{87EE9DA4-DE1E-4448-8324-183C98DCA588}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79} = {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xml", "libs\win32\apr-util\xml.2010.vcxproj", "{155844C3-EC5F-407F-97A4-A2DDADED9B2F}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "js", "libs\win32\js\js.2010.vcxproj", "{204FA0DE-305D-4414-AE2E-F195A23F390D}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_sofia", "src\mod\endpoints\mod_sofia\mod_sofia.2010.vcxproj", "{0DF3ABD0-DDC0-4265-B778-07C66780979B}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download PTHREAD", "libs\win32\Download PTHREAD.2010.vcxproj", "{8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pthread", "libs\win32\pthread\pthread.2010.vcxproj", "{DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_g723_1", "src\mod\codecs\mod_g723_1\mod_g723_1.2010.vcxproj", "{FEA1EEF7-876F-48DE-88BF-C0E3E606D758}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_iSAC", "src\mod\codecs\mod_isac\mod_iSAC.2010.vcxproj", "{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_native_file", "src\mod\formats\mod_native_file\mod_native_file.2010.vcxproj", "{9254C4B0-6F60-42B6-BB3A-36D63FC001C7}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_core_db", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_core_db.2010.vcxproj", "{ACFFF684-4D19-4D48-AF12-88EA1D778BDF}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_teletone", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_teletone.2010.vcxproj", "{8F992C49-6C51-412F-B2A3-34EAB708EB65}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libudns", "libs\win32\udns\libudns.2010.vcxproj", "{4043FC6A-9A30-4577-8AD5-9B233C9575D8}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_enum", "src\mod\applications\mod_enum\mod_enum.2010.vcxproj", "{71A967D5-0E99-4CEF-A587-98836EE6F2EF}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_odbc", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_odbc.2010.vcxproj", "{0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_curl", "src\mod\xml_int\mod_xml_curl\mod_xml_curl.2010.vcxproj", "{AB91A099-7690-4ECF-8994-E458F4EA1ED4}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_en", "src\mod\say\mod_say_en\mod_say_en.2010.vcxproj", "{988CACF7-3FCB-4992-BE69-77872AE67DC8}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "portaudio", "libs\portaudio\build\msvc\portaudio.2010.vcxproj", "{0A18A071-125E-442F-AFF7-A3F68ABECF99}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_cdr", "src\mod\xml_int\mod_xml_cdr\mod_xml_cdr.2010.vcxproj", "{08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_amr", "src\mod\codecs\mod_amr\mod_amr.2010.vcxproj", "{8DEB383C-4091-4F42-A56F-C9E46D552D79}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_h26x", "src\mod\codecs\mod_h26x\mod_h26x.2010.vcxproj", "{2C3C2423-234B-4772-8899-D3B137E5CA35}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_esf", "src\mod\applications\mod_esf\mod_esf.2010.vcxproj", "{3850D93A-5F24-4922-BC1C-74D08C37C256}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_local_stream", "src\mod\formats\mod_local_stream\mod_local_stream.2010.vcxproj", "{2CA40887-1622-46A1-A7F9-17FD7E7E545B}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_socket", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_socket.2010.vcxproj", "{028C7278-05D7-4E18-82FE-BE231B844F41}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_voicemail", "src\mod\applications\mod_voicemail\mod_voicemail.2010.vcxproj", "{D7F1E3F2-A3F4-474C-8555-15122571AF52}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_de", "src\mod\say\mod_say_de\mod_say_de.2010.vcxproj", "{5BC072DB-3826-48EA-AF34-FE32AA01E83B}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_es", "src\mod\say\mod_say_es\mod_say_es.2010.vcxproj", "{FA429E98-8B03-45E6-A096-A4BC5E821DE4}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_fr", "src\mod\say\mod_say_fr\mod_say_fr.2010.vcxproj", "{06E3A538-AB32-44F2-B477-755FF9CB5D37}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_it", "src\mod\say\mod_say_it\mod_say_it.2010.vcxproj", "{6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_nl", "src\mod\say\mod_say_nl\mod_say_nl.2010.vcxproj", "{A4B122CF-5196-476B-8C0E-D8BD59AC3C14}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_fifo", "src\mod\applications\mod_fifo\mod_fifo.2010.vcxproj", "{75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_db", "src\mod\applications\mod_db\mod_db.2010.vcxproj", "{F6A33240-8F29-48BD-98F0-826995911799}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_expr", "src\mod\applications\mod_expr\mod_expr.2010.vcxproj", "{65A6273D-FCAB-4C55-B09E-65100141A5D4}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dialplan_asterisk", "src\mod\dialplans\mod_dialplan_asterisk\mod_dialplan_asterisk.2010.vcxproj", "{E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_logfile", "src\mod\loggers\mod_logfile\mod_logfile.2010.vcxproj", "{D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_cdr_csv", "src\mod\event_handlers\mod_cdr_csv\mod_cdr_csv.2010.vcxproj", "{44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_tone_stream", "src\mod\formats\mod_tone_stream\mod_tone_stream.2010.vcxproj", "{6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_fsv", "src\mod\applications\mod_fsv\mod_fsv.2010.vcxproj", "{E3246D17-E29B-4AB5-962A-C69B0C5837BB}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_curl", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_curl.2010.vcxproj", "{36E854E3-CE12-4348-A125-CCF3F9D74813}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lua", "src\mod\languages\mod_lua\mod_lua.2010.vcxproj", "{7B077E7F-1BE7-4291-AB86-55E527B25CAC}"\r
--EndProject\r
+@@ -315,14 +315,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_curl", "sr
+ EndProject\r
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lua", "src\mod\languages\mod_lua\mod_lua.2010.vcxproj", "{7B077E7F-1BE7-4291-AB86-55E527B25CAC}"\r
+ EndProject\r
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "abyss", "libs\xmlrpc-c\Windows\abyss.2010.vcxproj", "{D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}"\r
-EndProject\r
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmlrpc", "libs\xmlrpc-c\Windows\xmlrpc.2010.vcxproj", "{CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}"\r
-EndProject\r
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmltok", "libs\xmlrpc-c\Windows\xmltok.2010.vcxproj", "{B535402E-38D2-4D54-8360-423ACBD17192}"\r
-EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download sphinxbase", "libs\win32\Download sphinxbase.2010.vcxproj", "{4F92B672-DADB-4047-8D6A-4BB3796733FD}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download sphinxmodel", "libs\win32\Download sphinxmodel.2010.vcxproj", "{2DEE4895-1134-439C-B688-52203E57D878}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download pocketsphinx", "libs\win32\Download pocketsphinx.2010.vcxproj", "{AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sphinxbase", "libs\win32\sphinxbase\sphinxbase.2010.vcxproj", "{2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pocketsphinx", "libs\win32\pocketsphinx\pocketsphinx.2010.vcxproj", "{94001A0E-A837-445C-8004-F918F10D0226}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_pocketsphinx", "src\mod\asr_tts\mod_pocketsphinx\mod_pocketsphinx.2010.vcxproj", "{2286DA73-9FC5-45BC-A508-85994C3317AB}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 8khzsound", "libs\win32\Download 8khz Sounds.2010.vcxproj", "{3CE1DC99-8246-4DB1-A709-74F19F08EC67}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 16khzsound", "libs\win32\Download 16khz Sounds.2010.vcxproj", "{87A1FE3D-F410-4C8E-9591-8C625985BC70}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "8khz", "libs\win32\Sound_Files\8khz.2010.vcxproj", "{7A8D8174-B355-4114-AFC1-04777CB9DE0A}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "16khz", "libs\win32\Sound_Files\16khz.2010.vcxproj", "{7EB71250-F002-4ED8-92CA-CA218114537A}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 32khzsound", "libs\win32\Dowload 32khz Sounds.2010.vcxproj", "{6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "32khz", "libs\win32\Sound_Files\32khz.2010.vcxproj", "{464AAB78-5489-4916-BE51-BF8D61822311}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "flite", "libs\win32\flite\flite.2010.vcxproj", "{0AD1177E-1FD8-4643-9391-431467A11084}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_flite", "src\mod\asr_tts\mod_flite\mod_flite.2010.vcxproj", "{66444AEE-554C-11DD-A9F0-8C5D56D89593}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download FLITE", "libs\win32\Download FLITE.2010.vcxproj", "{D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download LAME", "libs\win32\Download LAME.2010.vcxproj", "{D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download LIBSHOUT", "libs\win32\Download LIBSHOUT.2010.vcxproj", "{D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download OGG", "libs\win32\Download OGG.2010.vcxproj", "{D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmp3lame", "libs\win32\libmp3lame\libmp3lame.2010.vcxproj", "{E316772F-5D8F-4F2A-8F71-094C3E859D34}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libshout", "libs\win32\libshout\libshout.vcxproj", "{D3D8B329-20BE-475E-9E83-653CEA0E0EF5}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_shout", "src\mod\formats\mod_shout\mod_shout.vcxproj", "{38FE0559-9910-43A8-9E45-3E5004C27692}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libogg", "libs\win32\libogg\libogg.2010.vcxproj", "{0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_snom", "src\mod\applications\mod_snom\mod_snom.2010.vcxproj", "{2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_zh", "src\mod\say\mod_say_zh\mod_say_zh.2010.vcxproj", "{B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_managed", "src\mod\languages\mod_managed\mod_managed.2010.vcxproj", "{7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}"\r
--EndProject\r
--Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FreeSWITCH.Managed.2010", "src\mod\languages\mod_managed\managed\FreeSWITCH.Managed.2010.csproj", "{834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download mpg123", "libs\win32\Download mpg123.2010.vcxproj", "{E796E337-DE78-4303-8614-9A590862EE95}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmpg123", "libs\win32\mpg123\libmpg123.2010.vcxproj", "{419C8F80-D858-4B48-A25C-AF4007608137}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_loopback", "src\mod\endpoints\mod_loopback\mod_loopback.2010.vcxproj", "{B3F424EC-3D8F-417C-B244-3919D5E1A577}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_vmd", "src\mod\applications\mod_vmd\mod_vmd.2010.vcxproj", "{14E4A972-9CFB-436D-B0A5-4943F3F80D47}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libg722_1", "libs\win32\libg722_1\libg722_1.vcxproj", "{1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_siren", "src\mod\codecs\mod_siren\mod_siren.2010.vcxproj", "{0B6C905B-142E-4999-B39D-92FF7951E921}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "esl", "libs\esl\src\esl.2010.vcxproj", "{CF405366-9558-4AE8-90EF-5E21B51CCB4E}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fs_cli", "libs\esl\fs_cli.2010.vcxproj", "{D2FB8043-D208-4AEE-8F18-3B5857C871B9}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_easyroute", "src\mod\applications\mod_easyroute\mod_easyroute.2010.vcxproj", "{329FD5B0-EF28-4606-86D0-F6EA21CF8E36}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lcr", "src\mod\applications\mod_lcr\mod_lcr.2010.vcxproj", "{1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libtiff", "libs\spandsp\src\libtiff.2010.vcxproj", "{401A40CD-5DB4-4E34-AC68-FA99E9FAC014}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspandsp", "libs\spandsp\src\libspandsp.2010.vcxproj", "{1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspeex", "libs\speex\win32\VS2008\libspeex\libspeex.vcxproj", "{E972C52F-9E85-4D65-B19C-031E511E9DB4}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspeexdsp", "libs\speex\win32\VS2008\libspeexdsp\libspeexdsp.vcxproj", "{03207781-0D1C-4DB3-A71D-45C608F28DBD}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libilbc", "libs\ilbc\libilbc.2010.vcxproj", "{9A5DDF08-C88C-4A35-B7F6-D605228446BD}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lua51", "src\mod\languages\mod_lua\lua\lua.2010.vcxproj", "{D0B36172-CD76-454A-9B89-990025266C2A}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_opal", "src\mod\endpoints\mod_opal\mod_opal_2010.vcxproj", "{05C9FB27-480E-4D53-B3B7-6338E2526666}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skinny", "src\mod\endpoints\mod_skinny\mod_skinny_2010.vcxproj", "{CC1DD008-9406-448D-A0AD-33C3186CFADB}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_rtmp", "src\mod\endpoints\mod_rtmp\mod_rtmp_2010.vcxproj", "{48414740-C693-4968-9846-EE058020C64F}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_at_dictionary", "libs\spandsp\src\msvc\make_at_dictionary.2010.vcxproj", "{DEE932AB-5911-4700-9EEB-8C7090A0A330}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_modem_filter", "libs\spandsp\src\msvc\make_modem_filter.2010.vcxproj", "{329A6FA0-0FCC-4435-A950-E670AEFA9838}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skel", "src\mod\applications\mod_skel\mod_skel.2010.vcxproj", "{11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skypopen", "src\mod\endpoints\mod_skypopen\mod_skypopen.2010.vcxproj", "{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 32khz music", "libs\win32\Dowload 32khz music.2010.vcxproj", "{1F0A8A77-E661-418F-BB92-82172AE43803}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 8khz music", "libs\win32\Download 8khz music.2010.vcxproj", "{4F5C9D55-98EF-4256-8311-32D7BD360406}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 16khz music", "libs\win32\Download 16khz music.2010.vcxproj", "{E10571C4-E7F4-4608-B5F2-B22E7EB95400}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "8khz music", "libs\win32\Sound_Files\8khzmusic.2010.vcxproj", "{D1ABE208-6442-4FB4-9AAD-1677E41BC870}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "16khz music", "libs\win32\Sound_Files\16khzmusic.2010.vcxproj", "{BA599D0A-4310-4505-91DA-6A6447B3E289}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "32khz music", "libs\win32\Sound_Files\32khzmusic.2010.vcxproj", "{EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_nibblebill", "src\mod\applications\mod_nibblebill\mod_nibblebill.2010.vcxproj", "{3C977801-FE88-48F2-83D3-FA2EBFF6688E}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_ru", "src\mod\say\mod_say_ru\mod_say_ru.2010.vcxproj", "{0382E8FD-CFDC-41C0-8B03-792C7C84FC31}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_valet_parking", "src\mod\applications\mod_valet_parking\mod_valet_parking.2010.vcxproj", "{432DB165-1EB2-4781-A9C0-71E62610B20A}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libbroadvoice", "libs\broadvoice\src\libbroadvoice.2010.vcxproj", "{CF70F278-3364-4395-A2E1-23501C9B8AD2}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_bv", "src\mod\codecs\mod_bv\mod_bv.2010.vcxproj", "{D5C87B19-150D-4EF3-A671-96589BD2D14A}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "aprtoolkit", "libs\unimrcp\libs\apr-toolkit\aprtoolkit.2010.vcxproj", "{13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F} = {155844C3-EC5F-407F-97A4-A2DDADED9B2F}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mpf", "libs\unimrcp\libs\mpf\mpf.2010.vcxproj", "{B5A00BFA-6083-4FAE-A097-71642D6473B5}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcp", "libs\unimrcp\libs\mrcp\mrcp.2010.vcxproj", "{1C320193-46A6-4B34-9C56-8AB584FC1B56}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpclient", "libs\unimrcp\libs\mrcp-client\mrcpclient.2010.vcxproj", "{72782932-37CC-46AE-8C7F-9A7B1A6EE108}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpsignaling", "libs\unimrcp\libs\mrcp-signaling\mrcpsignaling.2010.vcxproj", "{12A49562-BAB9-43A3-A21D-15B60BBB4C31}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpv2transport", "libs\unimrcp\libs\mrcpv2-transport\mrcpv2transport.2010.vcxproj", "{A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unirtsp", "libs\unimrcp\libs\uni-rtsp\unirtsp.2010.vcxproj", "{504B3154-7A4F-459D-9877-B951021C3F1F}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpsofiasip", "libs\unimrcp\modules\mrcp-sofiasip\mrcpsofiasip.2010.vcxproj", "{746F3632-5BB2-4570-9453-31D6D58A7D8E}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpunirtsp", "libs\unimrcp\modules\mrcp-unirtsp\mrcpunirtsp.2010.vcxproj", "{DEB01ACB-D65F-4A62-AED9-58C1054499E9}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_unimrcp", "src\mod\asr_tts\mod_unimrcp\mod_unimrcp.2010.vcxproj", "{D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download CELT", "libs\win32\Download CELT.vcxproj", "{FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libcelt", "libs\win32\celt\libcelt.vcxproj", "{ABB71A76-42B0-47A4-973A-42E3D920C6FD}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_celt", "src\mod\codecs\mod_celt\mod_celt.vcxproj", "{4D418176-3B33-47E6-A63E-01BA34ADD21C}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FSComm", "fscomm\FSComm.2010.vcxproj", "{7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_curl", "src\mod\applications\mod_curl\mod_curl.2010.vcxproj", "{EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download JSON", "libs\win32\Download JSON.2010.vcxproj", "{B808178B-82F0-4CF4-A2B1-921939FA24D0}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjson", "libs\win32\json\libjson.2010.vcxproj", "{9778F1C0-09BC-4698-8EBC-BD982247209A}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_silk", "src\mod\codecs\mod_silk\mod_silk.2010.vcxproj", "{AFA983D6-4569-4F88-BA94-555ED00FD9A8}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Silk_FIX", "libs\silk\src\Silk_FIX.2010.vcxproj", "{56B91D01-9150-4BBF-AFA1-5B68AB991B76}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_avmd", "src\mod\applications\mod_avmd\mod_avmd.2010.vcxproj", "{990BAA76-89D3-4E38-8479-C7B28784EFC8}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spandsp", "src\mod\applications\mod_spandsp\mod_spandsp.2010.vcxproj", "{1E21AFE0-6FDB-41D2-942D-863607C24B91}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_hash", "src\mod\applications\mod_hash\mod_hash.2010.vcxproj", "{2E250296-0C08-4342-9C8A-BCBDD0E7DF65}"\r
--EndProject\r
--Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "openssl", "openssl", "{E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libeay32", "libs\win32\openssl\libeay32.2010.vcxproj", "{D331904D-A00A-4694-A5A3-FCFF64AB5DBE}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssleay32", "libs\win32\openssl\ssleay32.2010.vcxproj", "{B4B62169-5AD4-4559-8707-3D933AC5DB39}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "openssl", "libs\win32\openssl\openssl.2010.vcxproj", "{25BD39B1-C8BF-4676-A738-9CABD9C6BC79}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD} = {D578E676-7EC8-4548-BD8B-845C635F14AD}\r
-- EndProjectSection\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download OPENSSL", "libs\win32\Download OPENSSL.2010.vcxproj", "{D578E676-7EC8-4548-BD8B-845C635F14AD}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsofia_sip_ua_static", "libs\win32\sofia\libsofia_sip_ua_static.2010.vcxproj", "{70A49BC2-7500-41D0-B75D-EDCC5BE987A0}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_directory", "src\mod\applications\mod_directory\mod_directory.2010.vcxproj", "{B889A18E-70A7-44B5-B2C9-47798D4F43B3}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_h323", "src\mod\endpoints\mod_h323\mod_h323.2010.vcxproj", "{05C9FB27-480E-4D53-B3B7-7338E2514666}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_distributor", "src\mod\applications\mod_distributor\mod_distributor.2010.vcxproj", "{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}"\r
--EndProject\r
--Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "Setup", "w32\Setup\Setup.wixproj", "{47213370-B933-487D-9F45-BCA26D7E2B6F}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_pt", "src\mod\say\mod_say_pt\mod_say_pt.2010.vcxproj", "{7C22BDFF-CC09-400C-8A09-660733980028}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ldns", "libs\win32\ldns\ldns-lib\ldns-lib.2010.vcxproj", "{23B4D303-79FC-49E0-89E2-2280E7E28940}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_callcenter", "src\mod\applications\mod_callcenter\mod_callcenter.2010.vcxproj", "{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_blacklist", "src\mod\applications\mod_blacklist\mod_blacklist.2010.vcxproj", "{50AAC2CE-BFC9-4912-87CC-C6381850D735}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spy", "src\mod\applications\mod_spy\mod_spy.2010.vcxproj", "{A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_httapi", "src\mod\applications\mod_httapi\mod_httapi.2010.vcxproj", "{4748FF56-CA85-4809-97D6-A94C0FAC1D77}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_abstraction", "src\mod\applications\mod_abstraction\mod_abstraction.2010.vcxproj", "{60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_sms", "src\mod\applications\mod_sms\mod_sms.2010.vcxproj", "{2469B306-B027-4FF2-8815-C9C1EA2CAE79}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gsmlib", "src\mod\endpoints\mod_gsmopen\gsmlib\gsmlib-1.10-patched-13ubuntu\win32\gsmlib.2010.vcxproj", "{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_gsmopen", "src\mod\endpoints\mod_gsmopen\mod_gsmopen.2010.vcxproj", "{74B120FF-6935-4DFE-A142-CDB6BEA99C90}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libzrtp", "libs\libzrtp\projects\win\libzrtp.2010.vcxproj", "{C13CC324-0032-4492-9A30-310A6BD64FF5}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_redis", "src\mod\applications\mod_redis\mod_redis.2010.vcxproj", "{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download libjpeg", "libs\win32\Download libjpeg.2010.vcxproj", "{652AD5F7-8488-489F-AAD0-7FBE064703B6}"\r
--EndProject\r
--Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjpeg", "libs\win32\libjpeg\libjpeg.2010.vcxproj", "{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}"\r
-- ProjectSection(ProjectDependencies) = postProject\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6} = {652AD5F7-8488-489F-AAD0-7FBE064703B6}\r
-- EndProjectSection\r
--EndProject\r
--Global\r
-- GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
-- All|Win32 = All|Win32\r
-- All|x64 = All|x64\r
-- All|x64 Setup = All|x64 Setup\r
-- All|x86 Setup = All|x86 Setup\r
-- Debug|Win32 = Debug|Win32\r
-- Debug|x64 = Debug|x64\r
-- Debug|x64 Setup = Debug|x64 Setup\r
-- Debug|x86 Setup = Debug|x86 Setup\r
-- Release|Win32 = Release|Win32\r
-- Release|x64 = Release|x64\r
-- Release|x64 Setup = Release|x64 Setup\r
-- Release|x86 Setup = Release|x86 Setup\r
-- EndGlobalSection\r
-- GlobalSection(ProjectConfigurationPlatforms) = postSolution\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|Win32.ActiveCfg = Release|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64.ActiveCfg = Release|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64.Build.0 = Release|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64 Setup.Build.0 = Release|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x64.Build.0 = Debug|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|Win32.Build.0 = Release|Win32\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|x64.ActiveCfg = Release|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|x64.Build.0 = Release|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|Win32.ActiveCfg = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64.ActiveCfg = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64.Build.0 = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64 Setup.Build.0 = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|Win32.Build.0 = Debug|Win32\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x64.ActiveCfg = Debug|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x64.Build.0 = Debug|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|Win32.ActiveCfg = Release|Win32\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|Win32.Build.0 = Release|Win32\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|x64.ActiveCfg = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|x64.Build.0 = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|Win32.ActiveCfg = Release Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64.ActiveCfg = Release Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64.Build.0 = Release Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64 Setup.ActiveCfg = Release Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64 Setup.Build.0 = Release Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x86 Setup.ActiveCfg = Release Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|Win32.ActiveCfg = Debug Passthrough|Win32\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|Win32.Build.0 = Debug Passthrough|Win32\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x64.ActiveCfg = Debug Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x64.Build.0 = Debug Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x64 Setup.ActiveCfg = Debug Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x86 Setup.ActiveCfg = Debug Passthrough|Win32\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|Win32.ActiveCfg = Release Passthrough|Win32\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|Win32.Build.0 = Release Passthrough|Win32\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|x64.ActiveCfg = Release Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|x64.Build.0 = Release Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|x64 Setup.ActiveCfg = Release Passthrough|x64\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|x86 Setup.ActiveCfg = Release Passthrough|Win32\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|Win32.ActiveCfg = Release|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64.ActiveCfg = Release|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64.Build.0 = Release|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64 Setup.Build.0 = Release|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|Win32.Build.0 = Debug|Win32\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x64.ActiveCfg = Debug|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x64.Build.0 = Debug|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|Win32.ActiveCfg = Release|Win32\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|Win32.Build.0 = Release|Win32\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|x64.ActiveCfg = Release|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|x64.Build.0 = Release|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|Win32.ActiveCfg = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64.ActiveCfg = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64.Build.0 = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64 Setup.Build.0 = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|Win32.Build.0 = Debug|Win32\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x64.ActiveCfg = Debug|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x64.Build.0 = Debug|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|Win32.ActiveCfg = Release|Win32\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|Win32.Build.0 = Release|Win32\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|x64.ActiveCfg = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|x64.Build.0 = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|Win32.ActiveCfg = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x64.ActiveCfg = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x64.Build.0 = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x64 Setup.Build.0 = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|Win32.Build.0 = Debug|Win32\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|x64.ActiveCfg = Debug|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|x64.Build.0 = Debug|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|Win32.ActiveCfg = Release|Win32\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|Win32.Build.0 = Release|Win32\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|x64.ActiveCfg = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|x64.Build.0 = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|Win32.ActiveCfg = Release|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|x64.ActiveCfg = Release|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release|x64.ActiveCfg = Release|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|Win32.ActiveCfg = Release|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64.ActiveCfg = Release|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64.Build.0 = Release|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64 Setup.Build.0 = Release|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|Win32.Build.0 = Debug|Win32\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x64.ActiveCfg = Debug|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x64.Build.0 = Debug|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|Win32.ActiveCfg = Release|Win32\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|Win32.Build.0 = Release|Win32\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|x64.ActiveCfg = Release|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|x64.Build.0 = Release|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|Win32.ActiveCfg = Release MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64.ActiveCfg = Release MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64.Build.0 = Release MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64 Setup.ActiveCfg = Release MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64 Setup.Build.0 = Release MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x86 Setup.ActiveCfg = Release MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|Win32.ActiveCfg = Debug MS-LDAP|Win32\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|Win32.Build.0 = Debug MS-LDAP|Win32\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x64.ActiveCfg = Debug MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x64.Build.0 = Debug MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x64 Setup.ActiveCfg = Debug MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x86 Setup.ActiveCfg = Debug MS-LDAP|Win32\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|Win32.ActiveCfg = Release MS-LDAP|Win32\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|Win32.Build.0 = Release MS-LDAP|Win32\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|x64.ActiveCfg = Release MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|x64.Build.0 = Release MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|x64 Setup.ActiveCfg = Release MS-LDAP|x64\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|x86 Setup.ActiveCfg = Release MS-LDAP|Win32\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|Win32.ActiveCfg = Release|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64.ActiveCfg = Release|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64.Build.0 = Release|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64 Setup.Build.0 = Release|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|Win32.Build.0 = Debug|Win32\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x64.ActiveCfg = Debug|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x64.Build.0 = Debug|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|Win32.ActiveCfg = Release|Win32\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|Win32.Build.0 = Release|Win32\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|x64.ActiveCfg = Release|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|x64.Build.0 = Release|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.All|Win32.ActiveCfg = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64.ActiveCfg = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64.Build.0 = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64 Setup.Build.0 = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|Win32.Build.0 = Debug|Win32\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x64.ActiveCfg = Debug|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x64.Build.0 = Debug|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|Win32.ActiveCfg = Release|Win32\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|Win32.Build.0 = Release|Win32\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|x64.ActiveCfg = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|x64.Build.0 = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.All|Win32.ActiveCfg = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64.ActiveCfg = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64.Build.0 = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64 Setup.Build.0 = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|Win32.Build.0 = Debug|Win32\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x64.ActiveCfg = Debug|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x64.Build.0 = Debug|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|Win32.ActiveCfg = Release|Win32\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|Win32.Build.0 = Release|Win32\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|x64.ActiveCfg = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|x64.Build.0 = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|Win32.ActiveCfg = Release|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x64.ActiveCfg = Release|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x64.Build.0 = Release|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x64 Setup.Build.0 = Release|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|x64.Build.0 = Debug|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|Win32.Build.0 = Release|Win32\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|x64.ActiveCfg = Release|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|x64.Build.0 = Release|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.All|Win32.ActiveCfg = Release|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64.ActiveCfg = Release|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64.Build.0 = Release|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64 Setup.Build.0 = Release|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|x64.ActiveCfg = Debug|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.Release|x64.ActiveCfg = Release|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|Win32.ActiveCfg = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64.ActiveCfg = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64.Build.0 = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64 Setup.Build.0 = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x64.Build.0 = Debug|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|Win32.Build.0 = Release|Win32\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|x64.ActiveCfg = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|x64.Build.0 = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|Win32.ActiveCfg = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64.ActiveCfg = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64.Build.0 = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64 Setup.Build.0 = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|Win32.Build.0 = Debug|Win32\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x64.ActiveCfg = Debug|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x64.Build.0 = Debug|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|Win32.ActiveCfg = Release|Win32\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|Win32.Build.0 = Release|Win32\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|x64.ActiveCfg = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|x64.Build.0 = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|Win32.ActiveCfg = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64.ActiveCfg = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64.Build.0 = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64 Setup.Build.0 = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|Win32.Build.0 = Debug|Win32\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x64.ActiveCfg = Debug|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x64.Build.0 = Debug|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|Win32.ActiveCfg = Release|Win32\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|Win32.Build.0 = Release|Win32\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|x64.ActiveCfg = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|x64.Build.0 = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.All|Win32.ActiveCfg = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64.ActiveCfg = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64.Build.0 = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64 Setup.Build.0 = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x64.Build.0 = Debug|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Release|Win32.Build.0 = Release|Win32\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Release|x64.ActiveCfg = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Release|x64.Build.0 = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {1C453396-D912-4213-89FD-9B489162B7B5}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|Win32.ActiveCfg = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64.ActiveCfg = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64.Build.0 = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64 Setup.Build.0 = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|Win32.Build.0 = Debug|Win32\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x64.ActiveCfg = Debug|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x64.Build.0 = Debug|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|Win32.ActiveCfg = Release|Win32\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|Win32.Build.0 = Release|Win32\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|x64.ActiveCfg = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|x64.Build.0 = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|Win32.ActiveCfg = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64.ActiveCfg = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64.Build.0 = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64 Setup.Build.0 = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x64.Build.0 = Debug|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|Win32.Build.0 = Release|Win32\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|x64.ActiveCfg = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|x64.Build.0 = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.All|Win32.ActiveCfg = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64.ActiveCfg = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64.Build.0 = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64 Setup.Build.0 = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|Win32.Build.0 = Debug|Win32\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x64.ActiveCfg = Debug|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x64.Build.0 = Debug|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Release|Win32.ActiveCfg = Release|Win32\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Release|Win32.Build.0 = Release|Win32\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Release|x64.ActiveCfg = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Release|x64.Build.0 = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {C24FB505-05D7-4319-8485-7540B44C8603}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|Win32.ActiveCfg = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64.ActiveCfg = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64.Build.0 = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64 Setup.Build.0 = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x64.ActiveCfg = Debug|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x64.Build.0 = Debug|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|Win32.Build.0 = Release|Win32\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|x64.ActiveCfg = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|x64.Build.0 = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.All|Win32.ActiveCfg = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64.ActiveCfg = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64.Build.0 = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64 Setup.Build.0 = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|Win32.Build.0 = Debug|Win32\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x64.ActiveCfg = Debug|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x64.Build.0 = Debug|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|Win32.ActiveCfg = Release|Win32\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|Win32.Build.0 = Release|Win32\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|x64.ActiveCfg = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|x64.Build.0 = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.All|Win32.ActiveCfg = Release DLL|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64.ActiveCfg = Release DLL|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64.Build.0 = Release DLL|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64 Setup.ActiveCfg = Release DLL|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64 Setup.Build.0 = Release DLL|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x86 Setup.ActiveCfg = Release DLL|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x64.Build.0 = Debug|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|Win32.Build.0 = Release|Win32\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|x64.ActiveCfg = Release|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|x64.Build.0 = Release|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|Win32.ActiveCfg = Release Dll|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64.ActiveCfg = Release Dll|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64.Build.0 = Release Dll|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64 Setup.ActiveCfg = Release Dll|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64 Setup.Build.0 = Release Dll|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x86 Setup.ActiveCfg = Release Dll|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|Win32.Build.0 = Debug|Win32\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x64.ActiveCfg = Debug|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x64.Build.0 = Debug|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|Win32.ActiveCfg = Release|Win32\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|Win32.Build.0 = Release|Win32\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|x64.ActiveCfg = Release|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|x64.Build.0 = Release|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|Win32.ActiveCfg = Release DLL|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64.ActiveCfg = Release DLL|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64.Build.0 = Release DLL|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64 Setup.ActiveCfg = Release DLL|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64 Setup.Build.0 = Release DLL|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x86 Setup.ActiveCfg = Release DLL|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|Win32.Build.0 = Debug|Win32\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x64.ActiveCfg = Debug|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x64.Build.0 = Debug|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|Win32.ActiveCfg = Release|Win32\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|Win32.Build.0 = Release|Win32\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|x64.ActiveCfg = Release|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|x64.Build.0 = Release|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|Win32.ActiveCfg = Release DLL|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64.ActiveCfg = Release DLL|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64.Build.0 = Release DLL|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64 Setup.ActiveCfg = Release DLL|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64 Setup.Build.0 = Release DLL|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x86 Setup.ActiveCfg = Release DLL|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|Win32.Build.0 = Debug|Win32\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x64.ActiveCfg = Debug|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x64.Build.0 = Debug|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|Win32.ActiveCfg = Release|Win32\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|Win32.Build.0 = Release|Win32\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|x64.ActiveCfg = Release|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|x64.Build.0 = Release|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|Win32.ActiveCfg = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x64.ActiveCfg = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x64.Build.0 = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x64 Setup.Build.0 = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|x64.Build.0 = Debug|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|Win32.Build.0 = Release|Win32\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|x64.ActiveCfg = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|x64.Build.0 = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|Win32.ActiveCfg = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64.ActiveCfg = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64.Build.0 = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64 Setup.Build.0 = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|Win32.Build.0 = Debug|Win32\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x64.ActiveCfg = Debug|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x64.Build.0 = Debug|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|Win32.ActiveCfg = Release|Win32\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|Win32.Build.0 = Release|Win32\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|x64.ActiveCfg = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|x64.Build.0 = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|Win32.ActiveCfg = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64.ActiveCfg = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64.Build.0 = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64 Setup.Build.0 = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|Win32.Build.0 = Debug|Win32\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x64.ActiveCfg = Debug|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x64.Build.0 = Debug|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|Win32.ActiveCfg = Release|Win32\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|Win32.Build.0 = Release|Win32\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|x64.ActiveCfg = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|x64.Build.0 = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|Win32.ActiveCfg = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64.ActiveCfg = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64.Build.0 = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64 Setup.Build.0 = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|Win32.Build.0 = Debug|Win32\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x64.ActiveCfg = Debug|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x64.Build.0 = Debug|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|Win32.Build.0 = Release|Win32\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|x64.ActiveCfg = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|x64.Build.0 = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|Win32.ActiveCfg = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64.ActiveCfg = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64.Build.0 = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64 Setup.Build.0 = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x64.Build.0 = Debug|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|Win32.Build.0 = Release|Win32\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|x64.ActiveCfg = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|x64.Build.0 = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|Win32.ActiveCfg = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64.ActiveCfg = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64.Build.0 = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64 Setup.ActiveCfg = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64 Setup.Build.0 = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x86 Setup.ActiveCfg = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|Win32.Build.0 = Debug|Win32\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x64.ActiveCfg = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x64.Build.0 = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|Win32.ActiveCfg = Release|Win32\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|Win32.Build.0 = Release|Win32\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|x64.ActiveCfg = Release|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|x64.Build.0 = Release|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|Win32.ActiveCfg = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64.ActiveCfg = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64.Build.0 = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64 Setup.ActiveCfg = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64 Setup.Build.0 = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x86 Setup.ActiveCfg = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|Win32.Build.0 = Debug|Win32\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x64.ActiveCfg = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x64.Build.0 = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|Win32.Build.0 = Release|Win32\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|x64.ActiveCfg = Release|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|x64.Build.0 = Release|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|Win32.ActiveCfg = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x64.ActiveCfg = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x64.Build.0 = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x64 Setup.ActiveCfg = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x64 Setup.Build.0 = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x86 Setup.ActiveCfg = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|Win32.Build.0 = Debug|Win32\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|x64.ActiveCfg = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|x64.Build.0 = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|Win32.ActiveCfg = Release|Win32\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|Win32.Build.0 = Release|Win32\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|x64.ActiveCfg = Release|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|x64.Build.0 = Release|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|Win32.ActiveCfg = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64.ActiveCfg = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64.Build.0 = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64 Setup.Build.0 = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x64.Build.0 = Debug|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|Win32.Build.0 = Release|Win32\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|x64.ActiveCfg = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|x64.Build.0 = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|Win32.ActiveCfg = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|Win32.Build.0 = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64.ActiveCfg = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64.Build.0 = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64 Setup.Build.0 = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x86 Setup.Build.0 = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x64.Build.0 = Debug|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|Win32.Build.0 = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|x64.ActiveCfg = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|x64.Build.0 = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|Win32.ActiveCfg = Release DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64.ActiveCfg = Release DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64.Build.0 = Release DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64 Setup.ActiveCfg = Release DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64 Setup.Build.0 = Release DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x86 Setup.ActiveCfg = Release DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|Win32.ActiveCfg = Debug DLL|Win32\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|Win32.Build.0 = Debug DLL|Win32\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x64.ActiveCfg = Debug DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x64.Build.0 = Debug DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x64 Setup.ActiveCfg = Debug DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x86 Setup.ActiveCfg = Debug DLL|Win32\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|Win32.ActiveCfg = Release DLL|Win32\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|Win32.Build.0 = Release DLL|Win32\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|x64.ActiveCfg = Release DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|x64.Build.0 = Release DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|x64 Setup.ActiveCfg = Release DLL|x64\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|x86 Setup.ActiveCfg = Release DLL|Win32\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|Win32.ActiveCfg = Release Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64.ActiveCfg = Release Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64.Build.0 = Release Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64 Setup.ActiveCfg = Release Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64 Setup.Build.0 = Release Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x86 Setup.ActiveCfg = Release Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|Win32.ActiveCfg = Debug Passthrough|Win32\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|Win32.Build.0 = Debug Passthrough|Win32\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x64.ActiveCfg = Debug Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x64.Build.0 = Debug Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x64 Setup.ActiveCfg = Debug Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x86 Setup.ActiveCfg = Debug Passthrough|Win32\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|Win32.ActiveCfg = Release Passthrough|Win32\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|Win32.Build.0 = Release Passthrough|Win32\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|x64.ActiveCfg = Release Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|x64.Build.0 = Release Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|x64 Setup.ActiveCfg = Release Passthrough|x64\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|x86 Setup.ActiveCfg = Release Passthrough|Win32\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|Win32.ActiveCfg = Release|x64\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x64.ActiveCfg = Release|x64\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x64.Build.0 = Release|x64\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x64 Setup.Build.0 = Release|x64\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x64.ActiveCfg = Debug|x64\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x64.Build.0 = Debug|x64\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|Win32.Build.0 = Release|Win32\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x64.ActiveCfg = Release|x64\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x64.Build.0 = Release|x64\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|Win32.ActiveCfg = Release|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64.ActiveCfg = Release|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64.Build.0 = Release|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64 Setup.Build.0 = Release|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|Win32.Build.0 = Debug|Win32\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x64.ActiveCfg = Debug|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x64.Build.0 = Debug|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|Win32.ActiveCfg = Release|Win32\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|Win32.Build.0 = Release|Win32\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|x64.ActiveCfg = Release|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|x64.Build.0 = Release|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|Win32.ActiveCfg = Release|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x64.ActiveCfg = Release|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x64.Build.0 = Release|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x64 Setup.Build.0 = Release|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|Win32.Build.0 = Debug|Win32\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|x64.ActiveCfg = Debug|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|x64.Build.0 = Debug|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|Win32.ActiveCfg = Release|Win32\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|Win32.Build.0 = Release|Win32\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|x64.ActiveCfg = Release|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|x64.Build.0 = Release|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|Win32.ActiveCfg = Release|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x64.ActiveCfg = Release|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x64.Build.0 = Release|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x64 Setup.Build.0 = Release|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|Win32.Build.0 = Debug|Win32\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|x64.ActiveCfg = Debug|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|x64.Build.0 = Debug|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|Win32.ActiveCfg = Release|Win32\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|Win32.Build.0 = Release|Win32\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|x64.ActiveCfg = Release|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|x64.Build.0 = Release|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.All|Win32.ActiveCfg = Release|x64\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.All|x64.ActiveCfg = Release|x64\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.All|x64.Build.0 = Release|x64\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.All|x64 Setup.Build.0 = Release|x64\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Debug|x64.ActiveCfg = Debug|x64\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Release|Win32.ActiveCfg = Release|Win32\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Release|x64.ActiveCfg = Release|x64\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|Win32.ActiveCfg = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64.ActiveCfg = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64.Build.0 = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64 Setup.Build.0 = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|Win32.Build.0 = Debug|Win32\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x64.ActiveCfg = Debug|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x64.Build.0 = Debug|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|Win32.ActiveCfg = Release|Win32\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|Win32.Build.0 = Release|Win32\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|x64.ActiveCfg = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|x64.Build.0 = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|Win32.ActiveCfg = Release|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x64.ActiveCfg = Release|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x64.Build.0 = Release|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x64 Setup.Build.0 = Release|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|x64.Build.0 = Debug|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|Win32.Build.0 = Release|Win32\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|x64.ActiveCfg = Release|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|x64.Build.0 = Release|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|Win32.ActiveCfg = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64.ActiveCfg = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64.Build.0 = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64 Setup.Build.0 = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x64.Build.0 = Debug|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|Win32.Build.0 = Release|Win32\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|x64.ActiveCfg = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|x64.Build.0 = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|Win32.ActiveCfg = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64.ActiveCfg = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64.Build.0 = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64 Setup.Build.0 = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|Win32.Build.0 = Debug|Win32\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x64.ActiveCfg = Debug|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x64.Build.0 = Debug|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|Win32.ActiveCfg = Release|Win32\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|Win32.Build.0 = Release|Win32\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x64.ActiveCfg = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x64.Build.0 = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|Win32.ActiveCfg = Release DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64.ActiveCfg = Release DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64.Build.0 = Release DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64 Setup.ActiveCfg = Release DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64 Setup.Build.0 = Release DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x86 Setup.ActiveCfg = Release DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|Win32.ActiveCfg = Debug DirectSound|Win32\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|Win32.Build.0 = Debug DirectSound|Win32\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x64.ActiveCfg = Debug DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x64.Build.0 = Debug DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x64 Setup.ActiveCfg = Debug DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x86 Setup.ActiveCfg = Debug DirectSound|Win32\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|Win32.ActiveCfg = Release DirectSound|Win32\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|Win32.Build.0 = Release DirectSound|Win32\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64.ActiveCfg = Release DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64.Build.0 = Release DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64 Setup.ActiveCfg = Release DirectSound|x64\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x86 Setup.ActiveCfg = Release DirectSound|Win32\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|Win32.ActiveCfg = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64.ActiveCfg = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64.Build.0 = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64 Setup.Build.0 = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|Win32.Build.0 = Debug|Win32\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x64.ActiveCfg = Debug|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x64.Build.0 = Debug|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|Win32.ActiveCfg = Release|Win32\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|Win32.Build.0 = Release|Win32\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|x64.ActiveCfg = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|x64.Build.0 = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|Win32.ActiveCfg = Release Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64.ActiveCfg = Release Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64.Build.0 = Release Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64 Setup.ActiveCfg = Release Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64 Setup.Build.0 = Release Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x86 Setup.ActiveCfg = Release Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|Win32.ActiveCfg = Debug Passthrough|Win32\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|Win32.Build.0 = Debug Passthrough|Win32\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x64.ActiveCfg = Debug Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x64.Build.0 = Debug Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x64 Setup.ActiveCfg = Debug Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x86 Setup.ActiveCfg = Debug Passthrough|Win32\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|Win32.ActiveCfg = Release Passthrough|Win32\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|Win32.Build.0 = Release Passthrough|Win32\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|x64.ActiveCfg = Release Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|x64.Build.0 = Release Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|x64 Setup.ActiveCfg = Release Passthrough|x64\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|x86 Setup.ActiveCfg = Release Passthrough|Win32\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|Win32.ActiveCfg = Release|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64.ActiveCfg = Release|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64.Build.0 = Release|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64 Setup.Build.0 = Release|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x64.ActiveCfg = Debug|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x64.Build.0 = Debug|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|Win32.Build.0 = Release|Win32\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|x64.ActiveCfg = Release|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|x64.Build.0 = Release|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|Win32.ActiveCfg = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64.ActiveCfg = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64.Build.0 = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64 Setup.Build.0 = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|Win32.Build.0 = Debug|Win32\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x64.ActiveCfg = Debug|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x64.Build.0 = Debug|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|Win32.ActiveCfg = Release|Win32\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|Win32.Build.0 = Release|Win32\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|x64.ActiveCfg = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|x64.Build.0 = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|Win32.ActiveCfg = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64.ActiveCfg = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64.Build.0 = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64 Setup.Build.0 = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x64.ActiveCfg = Debug|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x64.Build.0 = Debug|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|Win32.Build.0 = Release|Win32\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|x64.ActiveCfg = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|x64.Build.0 = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.All|Win32.ActiveCfg = Release|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x64.ActiveCfg = Release|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x64.Build.0 = Release|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x64 Setup.Build.0 = Release|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|Win32.Build.0 = Debug|Win32\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|x64.ActiveCfg = Debug|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|x64.Build.0 = Debug|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|Win32.ActiveCfg = Release|Win32\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|Win32.Build.0 = Release|Win32\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|x64.ActiveCfg = Release|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|x64.Build.0 = Release|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|Win32.ActiveCfg = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64.ActiveCfg = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64.Build.0 = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64 Setup.Build.0 = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x64.Build.0 = Debug|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|Win32.Build.0 = Release|Win32\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|x64.ActiveCfg = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|x64.Build.0 = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|Win32.ActiveCfg = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64.ActiveCfg = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64.Build.0 = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64 Setup.Build.0 = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x64.ActiveCfg = Debug|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x64.Build.0 = Debug|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|Win32.Build.0 = Release|Win32\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|x64.ActiveCfg = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|x64.Build.0 = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|Win32.ActiveCfg = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64.ActiveCfg = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64.Build.0 = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64 Setup.Build.0 = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x64.Build.0 = Debug|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|Win32.Build.0 = Release|Win32\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|x64.ActiveCfg = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|x64.Build.0 = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|Win32.ActiveCfg = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64.ActiveCfg = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64.Build.0 = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64 Setup.Build.0 = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|Win32.Build.0 = Debug|Win32\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x64.ActiveCfg = Debug|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x64.Build.0 = Debug|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|Win32.ActiveCfg = Release|Win32\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|Win32.Build.0 = Release|Win32\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|x64.ActiveCfg = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|x64.Build.0 = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|Win32.ActiveCfg = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64.ActiveCfg = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64.Build.0 = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64 Setup.Build.0 = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|Win32.Build.0 = Debug|Win32\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x64.ActiveCfg = Debug|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x64.Build.0 = Debug|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|Win32.ActiveCfg = Release|Win32\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|Win32.Build.0 = Release|Win32\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|x64.ActiveCfg = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|x64.Build.0 = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|Win32.ActiveCfg = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64.ActiveCfg = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64.Build.0 = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64 Setup.Build.0 = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|Win32.Build.0 = Debug|Win32\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x64.ActiveCfg = Debug|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x64.Build.0 = Debug|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|Win32.ActiveCfg = Release|Win32\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|Win32.Build.0 = Release|Win32\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|x64.ActiveCfg = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|x64.Build.0 = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|Win32.ActiveCfg = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64.ActiveCfg = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64.Build.0 = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64 Setup.Build.0 = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x64.ActiveCfg = Debug|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x64.Build.0 = Debug|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|Win32.Build.0 = Release|Win32\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|x64.ActiveCfg = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|x64.Build.0 = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.All|Win32.ActiveCfg = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.All|x64.ActiveCfg = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.All|x64.Build.0 = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.All|x64 Setup.Build.0 = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Debug|Win32.Build.0 = Debug|Win32\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x64.ActiveCfg = Debug|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x64.Build.0 = Debug|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Release|Win32.ActiveCfg = Release|Win32\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Release|Win32.Build.0 = Release|Win32\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Release|x64.ActiveCfg = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Release|x64.Build.0 = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {F6A33240-8F29-48BD-98F0-826995911799}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|Win32.ActiveCfg = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64.ActiveCfg = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64.Build.0 = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64 Setup.Build.0 = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x64.Build.0 = Debug|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|Win32.Build.0 = Release|Win32\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|x64.ActiveCfg = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|x64.Build.0 = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|Win32.ActiveCfg = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64.ActiveCfg = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64.Build.0 = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64 Setup.Build.0 = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|Win32.Build.0 = Debug|Win32\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x64.ActiveCfg = Debug|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x64.Build.0 = Debug|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|Win32.Build.0 = Release|Win32\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|x64.ActiveCfg = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|x64.Build.0 = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|Win32.ActiveCfg = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64.ActiveCfg = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64.Build.0 = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64 Setup.Build.0 = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x64.Build.0 = Debug|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|Win32.Build.0 = Release|Win32\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|x64.ActiveCfg = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|x64.Build.0 = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|Win32.ActiveCfg = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64.ActiveCfg = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64.Build.0 = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64 Setup.Build.0 = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|Win32.Build.0 = Debug|Win32\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x64.ActiveCfg = Debug|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x64.Build.0 = Debug|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|Win32.Build.0 = Release|Win32\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|x64.ActiveCfg = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|x64.Build.0 = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|Win32.ActiveCfg = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64.ActiveCfg = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64.Build.0 = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64 Setup.Build.0 = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|Win32.Build.0 = Debug|Win32\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x64.ActiveCfg = Debug|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x64.Build.0 = Debug|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|Win32.ActiveCfg = Release|Win32\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|Win32.Build.0 = Release|Win32\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|x64.ActiveCfg = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|x64.Build.0 = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|Win32.ActiveCfg = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64.ActiveCfg = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64.Build.0 = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64 Setup.Build.0 = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|Win32.Build.0 = Debug|Win32\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x64.ActiveCfg = Debug|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x64.Build.0 = Debug|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|Win32.Build.0 = Release|Win32\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|x64.ActiveCfg = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|x64.Build.0 = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|Win32.ActiveCfg = Release|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x64.ActiveCfg = Release|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x64.Build.0 = Release|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x64 Setup.Build.0 = Release|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|Win32.Build.0 = Debug|Win32\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|x64.ActiveCfg = Debug|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|x64.Build.0 = Debug|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|Win32.ActiveCfg = Release|Win32\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|Win32.Build.0 = Release|Win32\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|x64.ActiveCfg = Release|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|x64.Build.0 = Release|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|Win32.ActiveCfg = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64.ActiveCfg = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64.Build.0 = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64 Setup.Build.0 = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|Win32.Build.0 = Debug|Win32\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x64.ActiveCfg = Debug|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x64.Build.0 = Debug|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|Win32.ActiveCfg = Release|Win32\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|Win32.Build.0 = Release|Win32\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64.ActiveCfg = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64.Build.0 = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x86 Setup.ActiveCfg = Release|Win32\r
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download sphinxbase", "libs\win32\Download sphinxbase.2010.vcxproj", "{4F92B672-DADB-4047-8D6A-4BB3796733FD}"\r
+ EndProject\r
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download sphinxmodel", "libs\win32\Download sphinxmodel.2010.vcxproj", "{2DEE4895-1134-439C-B688-52203E57D878}"\r
+@@ -529,6 +521,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_abstraction", "src\mod\
+ EndProject\r
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_sms", "src\mod\applications\mod_sms\mod_sms.2010.vcxproj", "{2469B306-B027-4FF2-8815-C9C1EA2CAE79}"\r
+ EndProject\r
++Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "xmlrpc-c", "xmlrpc-c", "{9DE35039-A8F6-4FBF-B1B6-EB527F802411}"\r
++EndProject\r
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gsmlib", "src\mod\endpoints\mod_gsmopen\gsmlib\gsmlib-1.10-patched-13ubuntu\win32\gsmlib.2010.vcxproj", "{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}"\r
+ EndProject\r
+ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_gsmopen", "src\mod\endpoints\mod_gsmopen\mod_gsmopen.2010.vcxproj", "{74B120FF-6935-4DFE-A142-CDB6BEA99C90}"\r
+@@ -544,6 +538,31 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjpeg", "libs\win32\libjp
+ {652AD5F7-8488-489F-AAD0-7FBE064703B6} = {652AD5F7-8488-489F-AAD0-7FBE064703B6}\r
+ EndProjectSection\r
+ EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "abyss", "libs\win32\xmlrpc-c\abyss.2010.vcxproj", "{D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647} = {0D108721-EAE8-4BAF-8102-D8960EC93647}\r
++ {B535402E-38D2-4D54-8360-423ACBD17192} = {B535402E-38D2-4D54-8360-423ACBD17192}\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA} = {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gennmtab", "libs\win32\xmlrpc-c\gennmtab.2010.vcxproj", "{BED7539C-0099-4A14-AD5D-30828F15A171}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647} = {0D108721-EAE8-4BAF-8102-D8960EC93647}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmlparse", "libs\win32\xmlrpc-c\xmlparse.2010.vcxproj", "{0D108721-EAE8-4BAF-8102-D8960EC93647}"\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmlrpc", "libs\win32\xmlrpc-c\xmlrpc.2010.vcxproj", "{CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647} = {0D108721-EAE8-4BAF-8102-D8960EC93647}\r
++ {B535402E-38D2-4D54-8360-423ACBD17192} = {B535402E-38D2-4D54-8360-423ACBD17192}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmltok", "libs\win32\xmlrpc-c\xmltok.2010.vcxproj", "{B535402E-38D2-4D54-8360-423ACBD17192}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171} = {BED7539C-0099-4A14-AD5D-30828F15A171}\r
++ EndProjectSection\r
++EndProject\r
+ Global\r
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
+ All|Win32 = All|Win32\r
+@@ -1826,78 +1845,6 @@ Global
+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64.Build.0 = Release|x64\r
+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64 Setup.ActiveCfg = Release|x64\r
+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x86 Setup.ActiveCfg = Release|Win32\r
- {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|Win32.ActiveCfg = Release|x64\r
- {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x64.ActiveCfg = Release|x64\r
- {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x64.Build.0 = Release|x64\r
- {B535402E-38D2-4D54-8360-423ACBD17192}.Release|x64.Build.0 = Release|x64\r
- {B535402E-38D2-4D54-8360-423ACBD17192}.Release|x64 Setup.ActiveCfg = Release|x64\r
- {B535402E-38D2-4D54-8360-423ACBD17192}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|Win32.ActiveCfg = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|Win32.Build.0 = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64.ActiveCfg = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64.Build.0 = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64 Setup.Build.0 = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x86 Setup.Build.0 = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x64.Build.0 = Debug|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|Win32.Build.0 = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|x64.ActiveCfg = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|x64.Build.0 = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.All|Win32.ActiveCfg = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.All|Win32.Build.0 = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.All|x64.ActiveCfg = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.All|x64.Build.0 = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.All|x64 Setup.Build.0 = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.All|x86 Setup.Build.0 = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x64.Build.0 = Debug|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Release|Win32.Build.0 = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Release|x64.ActiveCfg = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Release|x64.Build.0 = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {2DEE4895-1134-439C-B688-52203E57D878}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|Win32.ActiveCfg = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|Win32.Build.0 = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64.ActiveCfg = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64.Build.0 = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64 Setup.Build.0 = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x86 Setup.Build.0 = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|Win32.Build.0 = Debug|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x64.Build.0 = Debug|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|Win32.Build.0 = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|x64.ActiveCfg = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|x64.Build.0 = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|Win32.ActiveCfg = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64.ActiveCfg = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64.Build.0 = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64 Setup.ActiveCfg = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64 Setup.Build.0 = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x86 Setup.ActiveCfg = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x64.ActiveCfg = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x64.Build.0 = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|Win32.Build.0 = Release|Win32\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|x64.ActiveCfg = Release|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|x64.Build.0 = Release|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.All|Win32.ActiveCfg = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.All|x64.ActiveCfg = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.All|x64.Build.0 = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.All|x64 Setup.ActiveCfg = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.All|x64 Setup.Build.0 = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.All|x86 Setup.ActiveCfg = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Debug|Win32.Build.0 = Debug|Win32\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x64.ActiveCfg = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x64.Build.0 = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Release|Win32.ActiveCfg = Release|Win32\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Release|Win32.Build.0 = Release|Win32\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Release|x64.ActiveCfg = Release|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Release|x64.Build.0 = Release|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {94001A0E-A837-445C-8004-F918F10D0226}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|Win32.ActiveCfg = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x64.ActiveCfg = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x64.Build.0 = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x64 Setup.Build.0 = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|x64.ActiveCfg = Debug|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|x64.Build.0 = Debug|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|Win32.Build.0 = Release|Win32\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|x64.ActiveCfg = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|x64.Build.0 = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|Win32.ActiveCfg = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|Win32.Build.0 = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64.ActiveCfg = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64.Build.0 = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64 Setup.Build.0 = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x86 Setup.Build.0 = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|Win32.Build.0 = Debug|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x64.Build.0 = Debug|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|Win32.ActiveCfg = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|Win32.Build.0 = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|x64.ActiveCfg = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|x64.Build.0 = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|Win32.ActiveCfg = Release|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|x64.ActiveCfg = Release|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release|Win32.ActiveCfg = Release|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release|x64.ActiveCfg = Release|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|Win32.ActiveCfg = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|Win32.Build.0 = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64.ActiveCfg = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64.Build.0 = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64 Setup.Build.0 = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x86 Setup.Build.0 = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x64.Build.0 = Debug|x64\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|Win32.Build.0 = Release|Win32\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|x64.ActiveCfg = Release|x64\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|x64.Build.0 = Release|x64\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.All|Win32.ActiveCfg = Release|Win32\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.All|x64.ActiveCfg = Release|Win32\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.Release|x64.ActiveCfg = Release|x64\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|Win32.ActiveCfg = Release|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|x64.ActiveCfg = Release|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release|x64.ActiveCfg = Release|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.All|Win32.ActiveCfg = Release|Win32\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.All|x64.ActiveCfg = Release|Win32\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|x64.ActiveCfg = Debug|x64\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.Release|Win32.ActiveCfg = Release|Win32\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.Release|x64.ActiveCfg = Release|x64\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {464AAB78-5489-4916-BE51-BF8D61822311}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.All|Win32.ActiveCfg = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64.ActiveCfg = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64.Build.0 = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64 Setup.Build.0 = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x64.Build.0 = Debug|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Release|Win32.Build.0 = Release|Win32\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Release|x64.ActiveCfg = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Release|x64.Build.0 = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {0AD1177E-1FD8-4643-9391-431467A11084}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|Win32.ActiveCfg = Release Static|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64.ActiveCfg = Release Static|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64.Build.0 = Release Static|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64 Setup.ActiveCfg = Release Static|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64 Setup.Build.0 = Release Static|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x86 Setup.ActiveCfg = Release Static|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|Win32.Build.0 = Debug|Win32\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x64.ActiveCfg = Debug|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x64.Build.0 = Debug|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|Win32.ActiveCfg = Release|Win32\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|Win32.Build.0 = Release|Win32\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x64.ActiveCfg = Release|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x64.Build.0 = Release|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64 Setup.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x86 Setup.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x64.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64 Setup.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x86 Setup.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x64.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64 Setup.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x86 Setup.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x64.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64 Setup.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x86 Setup.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x64.Build.0 = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|Win32.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|x64.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|x64.Build.0 = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|Win32.ActiveCfg = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64.ActiveCfg = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64.Build.0 = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64 Setup.ActiveCfg = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64 Setup.Build.0 = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x86 Setup.ActiveCfg = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|Win32.Build.0 = Debug|Win32\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x64.ActiveCfg = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x64.Build.0 = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|Win32.Build.0 = Release|Win32\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|x64.ActiveCfg = Release|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|x64.Build.0 = Release|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|Win32.ActiveCfg = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64.ActiveCfg = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64.Build.0 = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64 Setup.ActiveCfg = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64 Setup.Build.0 = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x86 Setup.ActiveCfg = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x64.Build.0 = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|Win32.Build.0 = Release|Win32\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|x64.ActiveCfg = Release|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|x64.Build.0 = Release|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.All|Win32.ActiveCfg = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64.ActiveCfg = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64.Build.0 = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64 Setup.Build.0 = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|Win32.Build.0 = Debug|Win32\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x64.ActiveCfg = Debug|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x64.Build.0 = Debug|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|Win32.ActiveCfg = Release|Win32\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|Win32.Build.0 = Release|Win32\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|x64.ActiveCfg = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|x64.Build.0 = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|Win32.ActiveCfg = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64.ActiveCfg = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64.Build.0 = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64 Setup.ActiveCfg = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64 Setup.Build.0 = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x86 Setup.ActiveCfg = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x64.Build.0 = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|Win32.Build.0 = Release|Win32\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|x64.ActiveCfg = Release|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|x64.Build.0 = Release|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|Win32.ActiveCfg = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64.ActiveCfg = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64.Build.0 = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64 Setup.Build.0 = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x64.ActiveCfg = Debug|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x64.Build.0 = Debug|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|Win32.Build.0 = Release|Win32\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|x64.ActiveCfg = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|x64.Build.0 = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|Win32.ActiveCfg = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64.ActiveCfg = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64.Build.0 = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64 Setup.Build.0 = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x64.ActiveCfg = Debug|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x64.Build.0 = Debug|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|Win32.Build.0 = Release|Win32\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|x64.ActiveCfg = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|x64.Build.0 = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|Win32.ActiveCfg = Release_Mono|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64.ActiveCfg = Release_Mono|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64.Build.0 = Release_Mono|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64 Setup.ActiveCfg = Release_Mono|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64 Setup.Build.0 = Release_Mono|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x86 Setup.ActiveCfg = Release_Mono|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|Win32.ActiveCfg = Debug_CLR|Win32\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|Win32.Build.0 = Debug_CLR|Win32\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x64.ActiveCfg = Debug_CLR|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x64.Build.0 = Debug_CLR|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x64 Setup.ActiveCfg = Debug_CLR|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x86 Setup.ActiveCfg = Debug_CLR|Win32\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|Win32.ActiveCfg = Release_CLR|Win32\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|Win32.Build.0 = Release_CLR|Win32\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|x64.ActiveCfg = Release_CLR|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|x64.Build.0 = Release_CLR|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|x64 Setup.ActiveCfg = Release_CLR|x64\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|x86 Setup.ActiveCfg = Release_CLR|Win32\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.All|Win32.ActiveCfg = Release|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.All|x64.ActiveCfg = Release|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.All|x64 Setup.ActiveCfg = Release|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.All|x86 Setup.ActiveCfg = Release|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|Win32.ActiveCfg = Debug|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|Win32.Build.0 = Debug|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|x64.ActiveCfg = Debug|x64\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|x64.Build.0 = Debug|x64\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|x86 Setup.ActiveCfg = Debug|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|Win32.ActiveCfg = Release|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|Win32.Build.0 = Release|Any CPU\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|x64.ActiveCfg = Release|x64\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|x64.Build.0 = Release|x64\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|x86 Setup.ActiveCfg = Release|Any CPU\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.All|Win32.ActiveCfg = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.All|Win32.Build.0 = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.All|x64.ActiveCfg = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.All|x64.Build.0 = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.All|x64 Setup.Build.0 = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.All|x86 Setup.Build.0 = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Debug|Win32.Build.0 = Debug|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x64.Build.0 = Debug|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Release|Win32.Build.0 = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Release|x64.ActiveCfg = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Release|x64.Build.0 = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {E796E337-DE78-4303-8614-9A590862EE95}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.All|Win32.ActiveCfg = Release|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64.ActiveCfg = Release|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64.Build.0 = Release|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64 Setup.Build.0 = Release|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|Win32.Build.0 = Debug|Win32\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x64.ActiveCfg = Debug|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x64.Build.0 = Debug|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Release|Win32.ActiveCfg = Release|Win32\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Release|Win32.Build.0 = Release|Win32\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Release|x64.ActiveCfg = Release|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Release|x64.Build.0 = Release|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {419C8F80-D858-4B48-A25C-AF4007608137}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|Win32.ActiveCfg = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64.ActiveCfg = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64.Build.0 = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64 Setup.Build.0 = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x64.ActiveCfg = Debug|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x64.Build.0 = Debug|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|Win32.Build.0 = Release|Win32\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|x64.ActiveCfg = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|x64.Build.0 = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|Win32.ActiveCfg = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64.ActiveCfg = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64.Build.0 = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64 Setup.Build.0 = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|Win32.Build.0 = Debug|Win32\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x64.ActiveCfg = Debug|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x64.Build.0 = Debug|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|Win32.ActiveCfg = Release|Win32\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|Win32.Build.0 = Release|Win32\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|x64.ActiveCfg = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|x64.Build.0 = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|Win32.ActiveCfg = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64.ActiveCfg = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64.Build.0 = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64 Setup.Build.0 = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x64.Build.0 = Debug|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|Win32.Build.0 = Release|Win32\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|x64.ActiveCfg = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|x64.Build.0 = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.All|Win32.ActiveCfg = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64.ActiveCfg = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64.Build.0 = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64 Setup.Build.0 = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x64.Build.0 = Debug|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|Win32.Build.0 = Release|Win32\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|x64.ActiveCfg = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|x64.Build.0 = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|Win32.ActiveCfg = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64.ActiveCfg = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64.Build.0 = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64 Setup.Build.0 = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|Win32.Build.0 = Debug|Win32\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x64.ActiveCfg = Debug|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x64.Build.0 = Debug|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|Win32.Build.0 = Release|Win32\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|x64.ActiveCfg = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|x64.Build.0 = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|Win32.ActiveCfg = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64.ActiveCfg = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64.Build.0 = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64 Setup.Build.0 = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x64.Build.0 = Debug|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|Win32.Build.0 = Release|Win32\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|x64.ActiveCfg = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|x64.Build.0 = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|Win32.ActiveCfg = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64.ActiveCfg = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64.Build.0 = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64 Setup.Build.0 = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|Win32.Build.0 = Debug|Win32\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x64.ActiveCfg = Debug|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x64.Build.0 = Debug|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|Win32.ActiveCfg = Release|Win32\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|Win32.Build.0 = Release|Win32\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|x64.ActiveCfg = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|x64.Build.0 = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|Win32.ActiveCfg = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64.ActiveCfg = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64.Build.0 = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64 Setup.Build.0 = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x64.Build.0 = Debug|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|Win32.Build.0 = Release|Win32\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x64.ActiveCfg = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x64.Build.0 = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|Win32.ActiveCfg = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x64.ActiveCfg = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x64.Build.0 = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x64 Setup.Build.0 = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.Build.0 = Debug|Win32\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x64.ActiveCfg = Debug|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x64.Build.0 = Debug|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|Win32.ActiveCfg = Release|Win32\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|Win32.Build.0 = Release|Win32\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x64.ActiveCfg = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x64.Build.0 = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|Win32.ActiveCfg = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64.ActiveCfg = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64.Build.0 = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64 Setup.Build.0 = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64.Build.0 = Debug|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|Win32.Build.0 = Release|Win32\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x64.ActiveCfg = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x64.Build.0 = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|Win32.ActiveCfg = Release_WM5_PPC_ARM|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x64.ActiveCfg = Release_WM5_PPC_ARM|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x64.Build.0 = Release_WM5_PPC_ARM|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x64 Setup.ActiveCfg = Release_WM5_PPC_ARM|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x64 Setup.Build.0 = Release_WM5_PPC_ARM|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x86 Setup.ActiveCfg = Release_WM5_PPC_ARM|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|Win32.Build.0 = Debug|Win32\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|x64.ActiveCfg = Debug|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|x64.Build.0 = Debug|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|Win32.Build.0 = Release|Win32\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|x64.ActiveCfg = Release|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|x64.Build.0 = Release|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|Win32.ActiveCfg = Release_Static_SSE|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x64.ActiveCfg = Release_Static_SSE|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x64.Build.0 = Release_Static_SSE|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x64 Setup.ActiveCfg = Release_Static_SSE|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x64 Setup.Build.0 = Release_Static_SSE|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x86 Setup.ActiveCfg = Release_Static_SSE|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|x64.ActiveCfg = Debug|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|x64.Build.0 = Debug|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|Win32.Build.0 = Release|Win32\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x64.ActiveCfg = Release|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x64.Build.0 = Release|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|Win32.ActiveCfg = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64.ActiveCfg = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64.Build.0 = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64 Setup.Build.0 = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64.ActiveCfg = Debug|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64.Build.0 = Debug|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|Win32.Build.0 = Release|Win32\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x64.ActiveCfg = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x64.Build.0 = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.All|Win32.ActiveCfg = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64.ActiveCfg = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64.Build.0 = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64 Setup.Build.0 = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x64.Build.0 = Debug|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Release|Win32.Build.0 = Release|Win32\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Release|x64.ActiveCfg = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Release|x64.Build.0 = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {D0B36172-CD76-454A-9B89-990025266C2A}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|Win32.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|Win32.Build.0 = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|x64.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|x86 Setup.Build.0 = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release|Win32.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release|x64.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|Win32.ActiveCfg = Release|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|x64.ActiveCfg = Release|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|Win32.Build.0 = Debug|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x64.ActiveCfg = Debug|x64\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x64.Build.0 = Debug|x64\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|Win32.ActiveCfg = Release|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|Win32.Build.0 = Release|Win32\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x64.ActiveCfg = Release|x64\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x64.Build.0 = Release|x64\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.All|Win32.ActiveCfg = Release|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.All|x64.ActiveCfg = Release|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.Debug|Win32.Build.0 = Debug|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.Debug|x64.ActiveCfg = Debug|x64\r
-- {48414740-C693-4968-9846-EE058020C64F}.Debug|x64.Build.0 = Debug|x64\r
-- {48414740-C693-4968-9846-EE058020C64F}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {48414740-C693-4968-9846-EE058020C64F}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.Release|Win32.Build.0 = Release|Win32\r
-- {48414740-C693-4968-9846-EE058020C64F}.Release|x64.ActiveCfg = Release|x64\r
-- {48414740-C693-4968-9846-EE058020C64F}.Release|x64.Build.0 = Release|x64\r
-- {48414740-C693-4968-9846-EE058020C64F}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {48414740-C693-4968-9846-EE058020C64F}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|Win32.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|Win32.Build.0 = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|x64.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|x64 Setup.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|x86 Setup.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|x86 Setup.Build.0 = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|Win32.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|Win32.Build.0 = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x64.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x64.Build.0 = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x64 Setup.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x86 Setup.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|Win32.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|Win32.Build.0 = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|x64.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|x64.Build.0 = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|x64 Setup.ActiveCfg = All|Win32\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|x86 Setup.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|Win32.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|Win32.Build.0 = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|x64.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|x64 Setup.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|x86 Setup.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|x86 Setup.Build.0 = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|Win32.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|Win32.Build.0 = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x64.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x64.Build.0 = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x64 Setup.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x86 Setup.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|Win32.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|Win32.Build.0 = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|x64.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|x64.Build.0 = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|x64 Setup.ActiveCfg = All|Win32\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|x86 Setup.ActiveCfg = All|Win32\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|Win32.ActiveCfg = Release|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64.ActiveCfg = Release|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64.Build.0 = Release|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64 Setup.Build.0 = Release|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|x64.ActiveCfg = Debug|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release|Win32.ActiveCfg = Release|Win32\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release|x64.ActiveCfg = Release|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|Win32.ActiveCfg = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|Win32.Build.0 = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|x64.ActiveCfg = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|x86 Setup.Build.0 = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|Win32.Build.0 = Debug|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x64.ActiveCfg = Debug|x64\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x64.Build.0 = Debug|x64\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|Win32.Build.0 = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x64.ActiveCfg = Release|x64\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x64.Build.0 = Release|x64\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.All|Win32.ActiveCfg = Release|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.All|x64.ActiveCfg = Release|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.Release|x64.ActiveCfg = Release|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|Win32.ActiveCfg = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|Win32.Build.0 = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64.ActiveCfg = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64.Build.0 = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64 Setup.Build.0 = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x86 Setup.Build.0 = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|Win32.Build.0 = Debug|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x64.Build.0 = Debug|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|Win32.ActiveCfg = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|Win32.Build.0 = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|x64.ActiveCfg = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|x64.Build.0 = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|Win32.ActiveCfg = Release|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|x64.ActiveCfg = Release|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release|Win32.ActiveCfg = Release|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release|x64.ActiveCfg = Release|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|Win32.ActiveCfg = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|Win32.Build.0 = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64.ActiveCfg = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64.Build.0 = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64 Setup.Build.0 = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x86 Setup.Build.0 = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x64.Build.0 = Debug|x64\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|Win32.Build.0 = Release|Win32\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|x64.ActiveCfg = Release|x64\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|x64.Build.0 = Release|x64\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|Win32.ActiveCfg = Release|Win32\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|x64.ActiveCfg = Release|Win32\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|x64.ActiveCfg = Debug|x64\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release|Win32.ActiveCfg = Release|Win32\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release|x64.ActiveCfg = Release|x64\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|Win32.ActiveCfg = Release|Win32\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|x64.ActiveCfg = Release|Win32\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|x64.ActiveCfg = Debug|x64\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release|Win32.ActiveCfg = Release|Win32\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release|x64.ActiveCfg = Release|x64\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|Win32.ActiveCfg = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64.ActiveCfg = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64.Build.0 = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64 Setup.Build.0 = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|Win32.Build.0 = Debug|Win32\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x64.ActiveCfg = Debug|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x64.Build.0 = Debug|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|Win32.Build.0 = Release|Win32\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|x64.ActiveCfg = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|x64.Build.0 = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|Win32.ActiveCfg = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|Win32.Build.0 = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64.ActiveCfg = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64.Build.0 = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64 Setup.Build.0 = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x86 Setup.Build.0 = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|Win32.Build.0 = Debug|Win32\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x64.ActiveCfg = Debug|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x64.Build.0 = Debug|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|Win32.ActiveCfg = Release|Win32\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|Win32.Build.0 = Release|Win32\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|x64.ActiveCfg = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|x64.Build.0 = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|Win32.ActiveCfg = Release|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|x64.ActiveCfg = Release|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x64.Build.0 = Debug|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|Win32.Build.0 = Release|Win32\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|x64.ActiveCfg = Release|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|x64.Build.0 = Release|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|Win32.ActiveCfg = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|Win32.Build.0 = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|x64.ActiveCfg = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|x86 Setup.Build.0 = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|Win32.Build.0 = Debug|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x64.ActiveCfg = Debug|x64\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x64.Build.0 = Debug|x64\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|Win32.ActiveCfg = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|Win32.Build.0 = Release|Win32\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|x64.ActiveCfg = Release|x64\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|x64.Build.0 = Release|x64\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|Win32.ActiveCfg = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64.ActiveCfg = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64.Build.0 = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64 Setup.Build.0 = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x64.Build.0 = Debug|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|Win32.Build.0 = Release|Win32\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|x64.ActiveCfg = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|x64.Build.0 = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|Win32.ActiveCfg = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|Win32.Build.0 = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|x64.ActiveCfg = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|x86 Setup.Build.0 = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|Win32.Build.0 = Debug|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x64.ActiveCfg = Debug|x64\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x64.Build.0 = Debug|x64\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|Win32.ActiveCfg = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|Win32.Build.0 = Release|Win32\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|x64.ActiveCfg = Release|x64\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|x64.Build.0 = Release|x64\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|Win32.ActiveCfg = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|Win32.Build.0 = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|x64.ActiveCfg = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|x86 Setup.Build.0 = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x64.ActiveCfg = Debug|x64\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x64.Build.0 = Debug|x64\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|Win32.Build.0 = Release|Win32\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|x64.ActiveCfg = Release|x64\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|x64.Build.0 = Release|x64\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|Win32.ActiveCfg = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|Win32.Build.0 = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|x64.ActiveCfg = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|x86 Setup.Build.0 = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x64.Build.0 = Debug|x64\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|Win32.Build.0 = Release|Win32\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|x64.ActiveCfg = Release|x64\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|x64.Build.0 = Release|x64\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|Win32.ActiveCfg = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|Win32.Build.0 = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|x64.ActiveCfg = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|x86 Setup.Build.0 = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|Win32.Build.0 = Debug|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x64.ActiveCfg = Debug|x64\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x64.Build.0 = Debug|x64\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|Win32.ActiveCfg = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|Win32.Build.0 = Release|Win32\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|x64.ActiveCfg = Release|x64\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|x64.Build.0 = Release|x64\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|Win32.ActiveCfg = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|Win32.Build.0 = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|x64.ActiveCfg = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|x86 Setup.Build.0 = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|Win32.Build.0 = Debug|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x64.ActiveCfg = Debug|x64\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x64.Build.0 = Debug|x64\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|Win32.ActiveCfg = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|Win32.Build.0 = Release|Win32\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|x64.ActiveCfg = Release|x64\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|x64.Build.0 = Release|x64\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|Win32.ActiveCfg = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|Win32.Build.0 = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|x64.ActiveCfg = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|x86 Setup.Build.0 = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|Win32.Build.0 = Debug|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x64.ActiveCfg = Debug|x64\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x64.Build.0 = Debug|x64\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|Win32.ActiveCfg = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|Win32.Build.0 = Release|Win32\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|x64.ActiveCfg = Release|x64\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|x64.Build.0 = Release|x64\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.All|Win32.ActiveCfg = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.All|Win32.Build.0 = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.All|x64.ActiveCfg = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.All|x86 Setup.Build.0 = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|Win32.Build.0 = Debug|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x64.ActiveCfg = Debug|x64\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x64.Build.0 = Debug|x64\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|Win32.Build.0 = Release|Win32\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|x64.ActiveCfg = Release|x64\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|x64.Build.0 = Release|x64\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|Win32.ActiveCfg = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|Win32.Build.0 = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|x64.ActiveCfg = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|x86 Setup.Build.0 = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|Win32.Build.0 = Debug|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x64.ActiveCfg = Debug|x64\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x64.Build.0 = Debug|x64\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|Win32.Build.0 = Release|Win32\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|x64.ActiveCfg = Release|x64\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|x64.Build.0 = Release|x64\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|Win32.ActiveCfg = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|Win32.Build.0 = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|x64.ActiveCfg = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|x86 Setup.Build.0 = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|Win32.Build.0 = Debug|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x64.ActiveCfg = Debug|x64\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x64.Build.0 = Debug|x64\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|Win32.ActiveCfg = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|Win32.Build.0 = Release|Win32\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|x64.ActiveCfg = Release|x64\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|x64.Build.0 = Release|x64\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|Win32.ActiveCfg = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x64.ActiveCfg = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x64.Build.0 = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x64 Setup.Build.0 = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|x64.Build.0 = Debug|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|Win32.Build.0 = Release|Win32\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|x64.ActiveCfg = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|x64.Build.0 = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|Win32.ActiveCfg = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|Win32.Build.0 = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|x64.ActiveCfg = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|x86 Setup.Build.0 = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|Win32.Build.0 = Debug|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x64.Build.0 = Debug|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|Win32.ActiveCfg = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|Win32.Build.0 = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|x64.ActiveCfg = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|x64.Build.0 = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|Win32.ActiveCfg = Release|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64.ActiveCfg = Release|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64.Build.0 = Release|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64 Setup.Build.0 = Release|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x64.ActiveCfg = Debug|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x64.Build.0 = Debug|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|Win32.Build.0 = Release|Win32\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|x64.ActiveCfg = Release|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|x64.Build.0 = Release|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|Win32.ActiveCfg = Release Passthrough|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64.ActiveCfg = Release Passthrough|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64.Build.0 = Release Passthrough|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64 Setup.ActiveCfg = Release Passthrough|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64 Setup.Build.0 = Release Passthrough|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x86 Setup.ActiveCfg = Release Passthrough|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|Win32.Build.0 = Debug|Win32\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x64.ActiveCfg = Debug|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x64.Build.0 = Debug|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|Win32.ActiveCfg = Release|Win32\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|Win32.Build.0 = Release|Win32\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|x64.ActiveCfg = Release|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|x64.Build.0 = Release|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|Win32.ActiveCfg = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|Win32.Build.0 = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|x64.ActiveCfg = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|x86 Setup.Build.0 = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release|Win32.ActiveCfg = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release|x64.ActiveCfg = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|Win32.ActiveCfg = Release|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64.ActiveCfg = Release|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64.Build.0 = Release|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64 Setup.Build.0 = Release|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|Win32.Build.0 = Debug|Win32\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x64.ActiveCfg = Debug|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x64.Build.0 = Debug|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|Win32.ActiveCfg = Release|Win32\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|Win32.Build.0 = Release|Win32\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|x64.ActiveCfg = Release|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|x64.Build.0 = Release|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|Win32.ActiveCfg = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|Win32.Build.0 = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|x64.ActiveCfg = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|x86 Setup.Build.0 = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x64.Build.0 = Debug|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|Win32.Build.0 = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|x64.ActiveCfg = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|x64.Build.0 = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|Win32.ActiveCfg = Release|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64.ActiveCfg = Release|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64.Build.0 = Release|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64 Setup.Build.0 = Release|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x64.Build.0 = Debug|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|Win32.Build.0 = Release|Win32\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|x64.ActiveCfg = Release|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|x64.Build.0 = Release|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|Win32.ActiveCfg = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64.ActiveCfg = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64.Build.0 = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64 Setup.Build.0 = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|Win32.Build.0 = Debug|Win32\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x64.ActiveCfg = Debug|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x64.Build.0 = Debug|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|Win32.ActiveCfg = Release|Win32\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|Win32.Build.0 = Release|Win32\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|x64.ActiveCfg = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|x64.Build.0 = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|Win32.ActiveCfg = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|Win32.Build.0 = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|x64.ActiveCfg = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|x86 Setup.Build.0 = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|Win32.Build.0 = Debug|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x64.ActiveCfg = Debug|x64\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x64.Build.0 = Debug|x64\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|Win32.ActiveCfg = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|Win32.Build.0 = Release|Win32\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|x64.ActiveCfg = Release|x64\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|x64.Build.0 = Release|x64\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|Win32.ActiveCfg = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|Win32.Build.0 = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|x64.ActiveCfg = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|x86 Setup.Build.0 = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|Win32.Build.0 = Debug|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x64.ActiveCfg = Debug|x64\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x64.Build.0 = Debug|x64\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|Win32.ActiveCfg = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|Win32.Build.0 = Release|Win32\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|x64.ActiveCfg = Release|x64\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|x64.Build.0 = Release|x64\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|Win32.ActiveCfg = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64.ActiveCfg = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64.Build.0 = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64 Setup.Build.0 = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|Win32.Build.0 = Debug|Win32\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x64.ActiveCfg = Debug|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x64.Build.0 = Debug|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|Win32.ActiveCfg = Release|Win32\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|Win32.Build.0 = Release|Win32\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|x64.ActiveCfg = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|x64.Build.0 = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|Win32.ActiveCfg = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64.ActiveCfg = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64.Build.0 = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64 Setup.Build.0 = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x64.ActiveCfg = Debug|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x64.Build.0 = Debug|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|Win32.Build.0 = Release|Win32\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|x64.ActiveCfg = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|x64.Build.0 = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|Win32.ActiveCfg = Release|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|x64.ActiveCfg = Release|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|x64.Build.0 = Release|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|x64 Setup.Build.0 = Release|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|x64.ActiveCfg = Debug|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|x64.Build.0 = Debug|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|Win32.Build.0 = Release|Win32\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|x64.ActiveCfg = Release|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|x64.Build.0 = Release|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|Win32.ActiveCfg = Release|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|x64.ActiveCfg = Release|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|x64.Build.0 = Release|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|x64 Setup.Build.0 = Release|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|x64.ActiveCfg = Debug|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|x64.Build.0 = Debug|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|Win32.Build.0 = Release|Win32\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|x64.ActiveCfg = Release|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|x64.Build.0 = Release|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|Win32.ActiveCfg = Release|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|x64.ActiveCfg = Release|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|x64.Build.0 = Release|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|x64 Setup.Build.0 = Release|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|Win32.Build.0 = Debug|Win32\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|x64.ActiveCfg = Debug|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|x64.Build.0 = Debug|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|Win32.ActiveCfg = Release|Win32\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|Win32.Build.0 = Release|Win32\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|x64.ActiveCfg = Release|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|x64.Build.0 = Release|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|Win32.ActiveCfg = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|Win32.Build.0 = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|x64.ActiveCfg = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|x86 Setup.Build.0 = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|Win32.Build.0 = Debug|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|x64.Build.0 = Debug|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|Win32.ActiveCfg = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|Win32.Build.0 = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|x64.ActiveCfg = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|x64.Build.0 = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|Win32.ActiveCfg = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64.ActiveCfg = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64.Build.0 = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64 Setup.Build.0 = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|Win32.Build.0 = Debug|Win32\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x64.ActiveCfg = Debug|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x64.Build.0 = Debug|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|Win32.ActiveCfg = Release|Win32\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|Win32.Build.0 = Release|Win32\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|x64.ActiveCfg = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|x64.Build.0 = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|Win32.ActiveCfg = Release|x64\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|x64.ActiveCfg = Release|x64\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|x64.Build.0 = Release|x64\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|x64 Setup.Build.0 = Release|x64\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|Win32.Build.0 = Debug|Win32\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|x64.ActiveCfg = Debug|x64\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|x64.Build.0 = Debug|x64\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|Win32.ActiveCfg = Release|Win32\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|Win32.Build.0 = Release|Win32\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|x64.ActiveCfg = Release|x64\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|x64.Build.0 = Release|x64\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|Win32.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|Win32.Build.0 = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|x64.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|x86 Setup.Build.0 = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.Debug|x64.ActiveCfg = Debug|x64\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.Release|Win32.ActiveCfg = Release|Win32\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.Release|x64.ActiveCfg = Release|x64\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|Win32.ActiveCfg = Release|x64\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|x64.ActiveCfg = Release|x64\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|x64.Build.0 = Release|x64\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|x64 Setup.Build.0 = Release|x64\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|Win32.Build.0 = Debug|Win32\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|x64.ActiveCfg = Debug|x64\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|x64.Build.0 = Debug|x64\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|Win32.Build.0 = Release|Win32\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|x64.ActiveCfg = Release|x64\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|x64.Build.0 = Release|x64\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.All|Win32.ActiveCfg = Release|x86\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.All|x64.ActiveCfg = Release|x86\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.All|x64 Setup.ActiveCfg = Release|x86\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.All|x86 Setup.ActiveCfg = Release|x86\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.Debug|Win32.ActiveCfg = Debug|x86\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.Debug|x64.ActiveCfg = Debug|x64\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.Debug|x64 Setup.Build.0 = Debug|x64\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.Debug|x86 Setup.ActiveCfg = Debug|x86\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.Debug|x86 Setup.Build.0 = Debug|x86\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.Release|Win32.ActiveCfg = Release|x86\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.Release|x64.ActiveCfg = Release|x64\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.Release|x64 Setup.Build.0 = Release|x64\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.Release|x86 Setup.ActiveCfg = Release|x86\r
-- {47213370-B933-487D-9F45-BCA26D7E2B6F}.Release|x86 Setup.Build.0 = Release|x86\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.All|Win32.ActiveCfg = Release|x64\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.All|x64.ActiveCfg = Release|x64\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.All|x64.Build.0 = Release|x64\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.Debug|Win32.Build.0 = Debug|Win32\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.Debug|x64.ActiveCfg = Debug|x64\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.Debug|x64.Build.0 = Debug|x64\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.Release|Win32.ActiveCfg = Release|Win32\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.Release|Win32.Build.0 = Release|Win32\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.Release|x64.ActiveCfg = Release|x64\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.Release|x64.Build.0 = Release|x64\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {7C22BDFF-CC09-400C-8A09-660733980028}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|Win32.ActiveCfg = Release|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x64.ActiveCfg = Release|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x64.Build.0 = Release|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|Win32.Build.0 = Debug|Win32\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|x64.ActiveCfg = Debug|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|x64.Build.0 = Debug|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|Win32.ActiveCfg = Release|Win32\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|Win32.Build.0 = Release|Win32\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64.ActiveCfg = Release|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64.Build.0 = Release|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|Win32.ActiveCfg = Release|x64\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|x64.ActiveCfg = Release|x64\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|x64.Build.0 = Release|x64\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|Win32.Build.0 = Debug|Win32\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|x64.ActiveCfg = Debug|x64\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|x64.Build.0 = Debug|x64\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|Win32.ActiveCfg = Release|Win32\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|Win32.Build.0 = Release|Win32\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|x64.ActiveCfg = Release|x64\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|x64.Build.0 = Release|x64\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|Win32.ActiveCfg = Release|x64\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|x64.ActiveCfg = Release|x64\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|x64.Build.0 = Release|x64\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|Win32.Build.0 = Debug|Win32\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|x64.ActiveCfg = Debug|x64\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|x64.Build.0 = Debug|x64\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|Win32.ActiveCfg = Release|Win32\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|Win32.Build.0 = Release|Win32\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|x64.ActiveCfg = Release|x64\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|x64.Build.0 = Release|x64\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.All|Win32.ActiveCfg = Release|x64\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.All|x64.ActiveCfg = Release|x64\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.All|x64.Build.0 = Release|x64\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|Win32.Build.0 = Debug|Win32\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|x64.ActiveCfg = Debug|x64\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|x64.Build.0 = Debug|x64\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release|Win32.ActiveCfg = Release|Win32\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release|Win32.Build.0 = Release|Win32\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release|x64.ActiveCfg = Release|x64\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release|x64.Build.0 = Release|x64\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.All|Win32.ActiveCfg = Release|x64\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.All|x64.ActiveCfg = Release|x64\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.All|x64.Build.0 = Release|x64\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Debug|Win32.Build.0 = Debug|Win32\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Debug|x64.ActiveCfg = Debug|x64\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Debug|x64.Build.0 = Debug|x64\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|Win32.ActiveCfg = Release|Win32\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|Win32.Build.0 = Release|Win32\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|x64.ActiveCfg = Release|x64\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|x64.Build.0 = Release|x64\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.All|Win32.ActiveCfg = Release|x64\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.All|x64.ActiveCfg = Release|x64\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.All|x64.Build.0 = Release|x64\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Debug|Win32.Build.0 = Debug|Win32\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Debug|x64.ActiveCfg = Debug|x64\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Debug|x64.Build.0 = Debug|x64\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|Win32.ActiveCfg = Release|Win32\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|Win32.Build.0 = Release|Win32\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|x64.ActiveCfg = Release|x64\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|x64.Build.0 = Release|x64\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|Win32.ActiveCfg = Release|x64\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|x64.ActiveCfg = Release|x64\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|x64.Build.0 = Release|x64\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|Win32.Build.0 = Debug|Win32\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|x64.ActiveCfg = Debug|x64\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|x64.Build.0 = Debug|x64\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|Win32.ActiveCfg = Release|Win32\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|Win32.Build.0 = Release|Win32\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|x64.ActiveCfg = Release|x64\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|x64.Build.0 = Release|x64\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|Win32.ActiveCfg = Release|x64\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x64.ActiveCfg = Release|x64\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x64.Build.0 = Release|x64\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|x64.ActiveCfg = Debug|x64\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|Win32.ActiveCfg = Release|Win32\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|x64.ActiveCfg = Release|x64\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|x86 Setup.ActiveCfg = Release|x64\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|Win32.ActiveCfg = Release|x64\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x64.ActiveCfg = Release|x64\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x64.Build.0 = Release|x64\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|x64.ActiveCfg = Debug|x64\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|Win32.ActiveCfg = Release|Win32\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|x64.ActiveCfg = Release|x64\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|x86 Setup.ActiveCfg = Release|x64\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.All|Win32.ActiveCfg = Release|Win32\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.All|Win32.Build.0 = Release|Win32\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.All|x64.ActiveCfg = Release|Win32\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|Win32.Build.0 = Debug|Win32\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x64.ActiveCfg = Debug|x64\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x64.Build.0 = Debug|x64\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|Win32.ActiveCfg = Release|Win32\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|Win32.Build.0 = Release|Win32\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x64.ActiveCfg = Release|x64\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x64.Build.0 = Release|x64\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|Win32.ActiveCfg = Release|x64\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|x64.ActiveCfg = Release|x64\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|x64.Build.0 = Release|x64\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|x64 Setup.ActiveCfg = Release|x64\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|x86 Setup.ActiveCfg = Release|x64\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|Win32.Build.0 = Debug|Win32\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|x64.ActiveCfg = Debug|x64\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|x64.Build.0 = Debug|x64\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|Win32.ActiveCfg = Release|Win32\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|Win32.Build.0 = Release|Win32\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|x64.ActiveCfg = Release|x64\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|x64.Build.0 = Release|x64\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|x64 Setup.ActiveCfg = Release|x64\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|x86 Setup.ActiveCfg = Release|x64\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|Win32.ActiveCfg = Release|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|Win32.Build.0 = Release|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|x64.ActiveCfg = Release|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|Win32.Build.0 = Debug|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x64.ActiveCfg = Debug|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x64.Build.0 = Debug|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x64 Setup.ActiveCfg = Debug|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x86 Setup.ActiveCfg = Debug|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|Win32.ActiveCfg = Release|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|Win32.Build.0 = Release|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|x64.ActiveCfg = Release|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|x64.Build.0 = Release|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|Win32.ActiveCfg = Release|Win32\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|Win32.Build.0 = Release|Win32\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|x64.ActiveCfg = Release|Win32\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|x64 Setup.ActiveCfg = Release|Win32\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|x86 Setup.ActiveCfg = Release|Win32\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|Win32.ActiveCfg = Debug|Win32\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|Win32.Build.0 = Debug|Win32\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x64.ActiveCfg = Debug|x64\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x64.Build.0 = Debug|x64\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x64 Setup.ActiveCfg = Release|Win32\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x86 Setup.ActiveCfg = Release|Win32\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|Win32.ActiveCfg = Release|Win32\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|Win32.Build.0 = Release|Win32\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x64.ActiveCfg = Release|x64\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x64.Build.0 = Release|x64\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x64 Setup.ActiveCfg = Release|Win32\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x86 Setup.ActiveCfg = Release|Win32\r
-- EndGlobalSection\r
-- GlobalSection(SolutionProperties) = preSolution\r
-- HideSolutionNode = FALSE\r
-- EndGlobalSection\r
-- GlobalSection(NestedProjects) = preSolution\r
-- {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {5580D60E-0F77-4716-9CD4-B8E5986FA375} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {D3EC0AFF-76FC-4210-A825-9A17410660A3} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {FEA1EEF7-876F-48DE-88BF-C0E3E606D758} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {8DEB383C-4091-4F42-A56F-C9E46D552D79} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {2C3C2423-234B-4772-8899-D3B137E5CA35} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {0B6C905B-142E-4999-B39D-92FF7951E921} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {D5C87B19-150D-4EF3-A671-96589BD2D14A} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {4D418176-3B33-47E6-A63E-01BA34ADD21C} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {AFA983D6-4569-4F88-BA94-555ED00FD9A8} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}\r
-- {5FD31A25-5D83-4794-8BEE-904DAD84CE71} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {0DF3ABD0-DDC0-4265-B778-07C66780979B} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {B3F424EC-3D8F-417C-B244-3919D5E1A577} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {05C9FB27-480E-4D53-B3B7-6338E2526666} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {CC1DD008-9406-448D-A0AD-33C3186CFADB} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {48414740-C693-4968-9846-EE058020C64F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {05C9FB27-480E-4D53-B3B7-7338E2514666} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {74B120FF-6935-4DFE-A142-CDB6BEA99C90} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}\r
-- {30A5B29C-983E-4580-9FD0-D647CCDCC7EB} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {C24FB505-05D7-4319-8485-7540B44C8603} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {B5881A85-FE70-4F64-8607-2CAAE52669C6} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {71A967D5-0E99-4CEF-A587-98836EE6F2EF} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {3850D93A-5F24-4922-BC1C-74D08C37C256} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {D7F1E3F2-A3F4-474C-8555-15122571AF52} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {F6A33240-8F29-48BD-98F0-826995911799} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {65A6273D-FCAB-4C55-B09E-65100141A5D4} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {E3246D17-E29B-4AB5-962A-C69B0C5837BB} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {14E4A972-9CFB-436D-B0A5-4943F3F80D47} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {329FD5B0-EF28-4606-86D0-F6EA21CF8E36} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {3C977801-FE88-48F2-83D3-FA2EBFF6688E} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {432DB165-1EB2-4781-A9C0-71E62610B20A} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {990BAA76-89D3-4E38-8479-C7B28784EFC8} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {1E21AFE0-6FDB-41D2-942D-863607C24B91} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {2E250296-0C08-4342-9C8A-BCBDD0E7DF65} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {B889A18E-70A7-44B5-B2C9-47798D4F43B3} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {50AAC2CE-BFC9-4912-87CC-C6381850D735} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {4748FF56-CA85-4809-97D6-A94C0FAC1D77} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {2469B306-B027-4FF2-8815-C9C1EA2CAE79} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}\r
-- {07113B25-D3AF-4E04-BA77-4CD1171F022C} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}\r
-- {A27CCA23-1541-4337-81A4-F0A6413078A0} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}\r
-- {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}\r
-- {784113EF-44D9-4949-835D-7065D3C7AD08} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}\r
-- {05515420-16DE-4E63-BE73-85BE85BA5142} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}\r
-- {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}\r
-- {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6} = {A5A27244-AD24-46E5-B01B-840CD296C91D}\r
-- {9254C4B0-6F60-42B6-BB3A-36D63FC001C7} = {A5A27244-AD24-46E5-B01B-840CD296C91D}\r
-- {2CA40887-1622-46A1-A7F9-17FD7E7E545B} = {A5A27244-AD24-46E5-B01B-840CD296C91D}\r
-- {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52} = {A5A27244-AD24-46E5-B01B-840CD296C91D}\r
-- {38FE0559-9910-43A8-9E45-3E5004C27692} = {A5A27244-AD24-46E5-B01B-840CD296C91D}\r
-- {CBD81696-EFB4-4D2F-8451-1B8DAA86155A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {62F27B1A-C919-4A70-8478-51F178F3B18F} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {89385C74-5860-4174-9CAF-A39E7C48909C} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {1906D736-08BD-4EE1-924F-B536249B9A54} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {EEF031CB-FED8-451E-A471-91EC8D4F6750} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {8D04B550-D240-4A44-8A18-35DA3F7038D9} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {1CED5987-A529-46DC-B30F-870D85FF9C94} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {F057DA7F-79E5-4B00-845C-EF446EF055E3} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {E727E8F6-935D-46FE-8B0E-37834748A0E3} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {3D0370CA-BED2-4657-A475-32375CBCB6E4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {155844C3-EC5F-407F-97A4-A2DDADED9B2F} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {204FA0DE-305D-4414-AE2E-F195A23F390D} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {4043FC6A-9A30-4577-8AD5-9B233C9575D8} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {0A18A071-125E-442F-AFF7-A3F68ABECF99} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|Win32.ActiveCfg = Release|Win32\r
+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|Win32.Build.0 = Release|Win32\r
+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64.ActiveCfg = Release|Win32\r
+@@ -3718,6 +3665,91 @@ Global
+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x64.Build.0 = Release|x64\r
+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x64 Setup.ActiveCfg = Release|Win32\r
+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x86 Setup.ActiveCfg = Release|Win32\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|Win32.ActiveCfg = Release|x64\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x64.ActiveCfg = Release|x64\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x64.Build.0 = Release|x64\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x64 Setup.ActiveCfg = Release|x64\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x86 Setup.ActiveCfg = Release|x64\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|Win32.Build.0 = Debug|Win32\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|x64.ActiveCfg = Debug|x64\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|x64.Build.0 = Debug|x64\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release|Win32.ActiveCfg = Release|Win32\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release|Win32.Build.0 = Release|Win32\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release|x64.ActiveCfg = Release|x64\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release|x64.Build.0 = Release|x64\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release|x64 Setup.ActiveCfg = Release|x64\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release|x86 Setup.ActiveCfg = Release|x64\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.All|Win32.ActiveCfg = Release|x64\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.All|x64.ActiveCfg = Release|x64\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.All|x64.Build.0 = Release|x64\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.All|x64 Setup.ActiveCfg = Release|x64\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.All|x86 Setup.ActiveCfg = Release|x64\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|Win32.Build.0 = Debug|Win32\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|x64.ActiveCfg = Debug|x64\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|x64.Build.0 = Debug|x64\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.Release|Win32.ActiveCfg = Release|Win32\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.Release|Win32.Build.0 = Release|Win32\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.Release|x64.ActiveCfg = Release|x64\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.Release|x64.Build.0 = Release|x64\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.Release|x64 Setup.ActiveCfg = Release|x64\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171}.Release|x86 Setup.ActiveCfg = Release|x64\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.All|Win32.ActiveCfg = Release|x64\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.All|x64.ActiveCfg = Release|x64\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.All|x64.Build.0 = Release|x64\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.All|x64 Setup.ActiveCfg = Release|x64\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.All|x86 Setup.ActiveCfg = Release|x64\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|Win32.Build.0 = Debug|Win32\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|x64.ActiveCfg = Debug|x64\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|x64.Build.0 = Debug|x64\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release|Win32.ActiveCfg = Release|Win32\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release|Win32.Build.0 = Release|Win32\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release|x64.ActiveCfg = Release|x64\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release|x64.Build.0 = Release|x64\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release|x64 Setup.ActiveCfg = Release|x64\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release|x86 Setup.ActiveCfg = Release|x64\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.All|Win32.ActiveCfg = Release|x64\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.All|x64.ActiveCfg = Release|x64\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.All|x64.Build.0 = Release|x64\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.All|x64 Setup.ActiveCfg = Release|x64\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.All|x86 Setup.ActiveCfg = Release|x64\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|Win32.Build.0 = Debug|Win32\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|x64.ActiveCfg = Debug|x64\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|x64.Build.0 = Debug|x64\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release|Win32.ActiveCfg = Release|Win32\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release|Win32.Build.0 = Release|Win32\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release|x64.ActiveCfg = Release|x64\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release|x64.Build.0 = Release|x64\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release|x64 Setup.ActiveCfg = Release|x64\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release|x86 Setup.ActiveCfg = Release|x64\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.All|Win32.ActiveCfg = Release|x64\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.All|x64.ActiveCfg = Release|x64\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.All|x64.Build.0 = Release|x64\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.All|x64 Setup.ActiveCfg = Release|x64\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.All|x86 Setup.ActiveCfg = Release|x64\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|Win32.Build.0 = Debug|Win32\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|x64.ActiveCfg = Debug|x64\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|x64.Build.0 = Debug|x64\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|x64 Setup.ActiveCfg = Debug|x64\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|x86 Setup.ActiveCfg = Debug|x64\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.Release|Win32.ActiveCfg = Release|Win32\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.Release|Win32.Build.0 = Release|Win32\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.Release|x64.ActiveCfg = Release|x64\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.Release|x64.Build.0 = Release|x64\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.Release|x64 Setup.ActiveCfg = Release|x64\r
++ {B535402E-38D2-4D54-8360-423ACBD17192}.Release|x86 Setup.ActiveCfg = Release|x64\r
+ EndGlobalSection\r
+ GlobalSection(SolutionProperties) = preSolution\r
+ HideSolutionNode = FALSE\r
+@@ -3804,10 +3836,6 @@ Global
+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {0A18A071-125E-442F-AFF7-A3F68ABECF99} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
- {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
- {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
- {0D108721-EAE8-4BAF-8102-D8960EC93647} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
- {B535402E-38D2-4D54-8360-423ACBD17192} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {94001A0E-A837-445C-8004-F918F10D0226} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {0AD1177E-1FD8-4643-9391-431467A11084} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {E316772F-5D8F-4F2A-8F71-094C3E859D34} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {D3D8B329-20BE-475E-9E83-653CEA0E0EF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {419C8F80-D858-4B48-A25C-AF4007608137} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {CF405366-9558-4AE8-90EF-5E21B51CCB4E} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {401A40CD-5DB4-4E34-AC68-FA99E9FAC014} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {E972C52F-9E85-4D65-B19C-031E511E9DB4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {03207781-0D1C-4DB3-A71D-45C608F28DBD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {9A5DDF08-C88C-4A35-B7F6-D605228446BD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {D0B36172-CD76-454A-9B89-990025266C2A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {DEE932AB-5911-4700-9EEB-8C7090A0A330} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {329A6FA0-0FCC-4435-A950-E670AEFA9838} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {CF70F278-3364-4395-A2E1-23501C9B8AD2} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {ABB71A76-42B0-47A4-973A-42E3D920C6FD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {9778F1C0-09BC-4698-8EBC-BD982247209A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {56B91D01-9150-4BBF-AFA1-5B68AB991B76} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {70A49BC2-7500-41D0-B75D-EDCC5BE987A0} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {23B4D303-79FC-49E0-89E2-2280E7E28940} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {C13CC324-0032-4492-9A30-310A6BD64FF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
-- {EC3E5C7F-EE09-47E2-80FE-546363D14A98} = {B8F5B47B-8568-46EB-B320-64C17D2A98BC}\r
-- {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {ACFFF684-4D19-4D48-AF12-88EA1D778BDF} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {8F992C49-6C51-412F-B2A3-34EAB708EB65} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {028C7278-05D7-4E18-82FE-BE231B844F41} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {36E854E3-CE12-4348-A125-CCF3F9D74813} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {7B077E7F-1BE7-4291-AB86-55E527B25CAC} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0} = {0C808854-54D1-4230-BFF5-77B5FD905000}\r
-- {692F6330-4D87-4C82-81DF-40DB5892636E} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}\r
-- {2286DA73-9FC5-45BC-A508-85994C3317AB} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}\r
-- {66444AEE-554C-11DD-A9F0-8C5D56D89593} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}\r
-- {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}\r
-- {1C453396-D912-4213-89FD-9B489162B7B5} = {A7AB4405-FDB7-4853-9FBB-1516B1C3D80A}\r
-- {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909} = {A7AB4405-FDB7-4853-9FBB-1516B1C3D80A}\r
-- {CBEC7225-0C21-4DA8-978E-1F158F8AD950} = {F69A4A6B-9360-4EBB-A280-22AA3C455AC5}\r
-- {AB91A099-7690-4ECF-8994-E458F4EA1ED4} = {F69A4A6B-9360-4EBB-A280-22AA3C455AC5}\r
-- {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836} = {F69A4A6B-9360-4EBB-A280-22AA3C455AC5}\r
-- {1A1FF289-4FD6-4285-A422-D31DD67A4723} = {CBD81696-EFB4-4D2F-8451-1B8DAA86155A}\r
-- {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {4F92B672-DADB-4047-8D6A-4BB3796733FD} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {2DEE4895-1134-439C-B688-52203E57D878} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {3CE1DC99-8246-4DB1-A709-74F19F08EC67} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {87A1FE3D-F410-4C8E-9591-8C625985BC70} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {E796E337-DE78-4303-8614-9A590862EE95} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {1F0A8A77-E661-418F-BB92-82172AE43803} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {4F5C9D55-98EF-4256-8311-32D7BD360406} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {E10571C4-E7F4-4608-B5F2-B22E7EB95400} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {B808178B-82F0-4CF4-A2B1-921939FA24D0} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {D578E676-7EC8-4548-BD8B-845C635F14AD} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {652AD5F7-8488-489F-AAD0-7FBE064703B6} = {C120A020-773F-4EA3-923F-B67AF28B750D}\r
-- {988CACF7-3FCB-4992-BE69-77872AE67DC8} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {5BC072DB-3826-48EA-AF34-FE32AA01E83B} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {FA429E98-8B03-45E6-A096-A4BC5E821DE4} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {06E3A538-AB32-44F2-B477-755FF9CB5D37} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {A4B122CF-5196-476B-8C0E-D8BD59AC3C14} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {0382E8FD-CFDC-41C0-8B03-792C7C84FC31} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {7C22BDFF-CC09-400C-8A09-660733980028} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}\r
-- {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0} = {57D119DC-484F-420F-B9E9-8589FD9A8DF8}\r
-- {3C90CCF0-2CDD-4A7A-ACFF-208C1E271692} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}\r
-- {C7E2382E-2C22-4D18-BF93-80C6A1FFA7AC} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}\r
-- {FC71C66E-E268-4EAD-B1F5-F008DC382E83} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}\r
-- {8E2E8798-8B6F-4A55-8E4F-4E6FDE40ED26} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}\r
-- {09455AA9-C243-4F16-A1A1-A016881A2765} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}\r
-- {CDE9B06A-3C27-4987-8FAE-DF1006BC705D} = {DB1024A8-41BF-4AD7-9AE6-13202230D1F3}\r
-- {57199684-EC63-4A60-9DC6-11815AF6B413} = {09455AA9-C243-4F16-A1A1-A016881A2765}\r
-- {2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C} = {09455AA9-C243-4F16-A1A1-A016881A2765}\r
-- {D4A12E4C-DBDA-4614-BA26-3425AE9F60F5} = {09455AA9-C243-4F16-A1A1-A016881A2765}\r
-- {765EF1B9-5027-4820-BC37-A44466A51631} = {57199684-EC63-4A60-9DC6-11815AF6B413}\r
-- {713E4747-1126-40B1-BD84-58F9A7745423} = {57199684-EC63-4A60-9DC6-11815AF6B413}\r
-- {D3E5C8ED-3A6A-4FEA-92A2-48A0BA865358} = {2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C}\r
-- {CC3E7F48-2590-49CB-AD8B-BE3650F55462} = {2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C}\r
-- {F1B71990-EB04-4EB5-B28A-BC3EB6F7E843} = {D4A12E4C-DBDA-4614-BA26-3425AE9F60F5}\r
-- {3DAF028C-AB5B-4183-A01B-DCC43F5A87F0} = {D4A12E4C-DBDA-4614-BA26-3425AE9F60F5}\r
-- {7A8D8174-B355-4114-AFC1-04777CB9DE0A} = {4F227C26-768F-46A3-8684-1D08A46FB374}\r
-- {7EB71250-F002-4ED8-92CA-CA218114537A} = {4F227C26-768F-46A3-8684-1D08A46FB374}\r
-- {464AAB78-5489-4916-BE51-BF8D61822311} = {4F227C26-768F-46A3-8684-1D08A46FB374}\r
-- {D1ABE208-6442-4FB4-9AAD-1677E41BC870} = {4F227C26-768F-46A3-8684-1D08A46FB374}\r
-- {BA599D0A-4310-4505-91DA-6A6447B3E289} = {4F227C26-768F-46A3-8684-1D08A46FB374}\r
-- {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959} = {4F227C26-768F-46A3-8684-1D08A46FB374}\r
-- {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {B5A00BFA-6083-4FAE-A097-71642D6473B5} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {1C320193-46A6-4B34-9C56-8AB584FC1B56} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {72782932-37CC-46AE-8C7F-9A7B1A6EE108} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {12A49562-BAB9-43A3-A21D-15B60BBB4C31} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {504B3154-7A4F-459D-9877-B951021C3F1F} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {746F3632-5BB2-4570-9453-31D6D58A7D8E} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {DEB01ACB-D65F-4A62-AED9-58C1054499E9} = {62F27B1A-C919-4A70-8478-51F178F3B18F}\r
-- {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A}\r
-- {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A}\r
-- {25BD39B1-C8BF-4676-A738-9CABD9C6BC79} = {E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A}\r
-- EndGlobalSection\r
--EndGlobal\r
-+
-+Microsoft Visual Studio Solution File, Format Version 11.00
-+# Visual Studio 2010
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Codecs", "Codecs", "{F881ADA2-2F1A-4046-9FEB-191D9422D781}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Endpoints", "Endpoints", "{9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Applications", "Applications", "{E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dialplans", "Dialplans", "{C5F182F9-754A-4EC5-B50F-76ED02BE13F4}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Event Handlers", "Event Handlers", "{9ADF1E48-2F5C-4ED7-A893-596259FABFE0}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Formats", "Formats", "{A5A27244-AD24-46E5-B01B-840CD296C91D}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Docs", "Docs", "{CBD81696-EFB4-4D2F-8451-1B8DAA86155A}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Directories", "Directories", "{B8F5B47B-8568-46EB-B320-64C17D2A98BC}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Languages", "Languages", "{0C808854-54D1-4230-BFF5-77B5FD905000}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ASR-TTS", "ASR-TTS", "{4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Loggers", "Loggers", "{A7AB4405-FDB7-4853-9FBB-1516B1C3D80A}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XML Interfaces", "XML Interfaces", "{F69A4A6B-9360-4EBB-A280-22AA3C455AC5}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Libraries", "_Libraries", "{EB910B0D-F27D-4B62-B67B-DE834C99AC5B}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Downloads", "_Downloads", "{C120A020-773F-4EA3-923F-B67AF28B750D}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "say", "say", "{6CD61A1D-797C-470A-BE08-8C31B68BB336}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Config", "_Config", "{57D119DC-484F-420F-B9E9-8589FD9A8DF8}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Default", "Default", "{3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\freeswitch.xml = conf\vanilla\freeswitch.xml
-+ conf\vanilla\vars.xml = conf\vanilla\vars.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "_Build System", "_Build System", "{DB1024A8-41BF-4AD7-9AE6-13202230D1F3}"
-+ ProjectSection(SolutionItems) = preProject
-+ acsite.m4 = acsite.m4
-+ bootstrap.sh = bootstrap.sh
-+ build\buildlib.sh = build\buildlib.sh
-+ configure.in = configure.in
-+ Makefile.am = Makefile.am
-+ build\modmake.rules.in = build\modmake.rules.in
-+ build\modules.conf.in = build\modules.conf.in
-+ libs\win32\util.vbs = libs\win32\util.vbs
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "m4", "m4", "{CDE9B06A-3C27-4987-8FAE-DF1006BC705D}"
-+ ProjectSection(SolutionItems) = preProject
-+ build\config\ac_cflags_gcc_option.m4 = build\config\ac_cflags_gcc_option.m4
-+ build\config\ac_cflags_sun_option.m4 = build\config\ac_cflags_sun_option.m4
-+ build\config\ac_gcc_archflag.m4 = build\config\ac_gcc_archflag.m4
-+ build\config\ac_gcc_x86_cpuid.m4 = build\config\ac_gcc_x86_cpuid.m4
-+ build\config\ac_prog_gzip.m4 = build\config\ac_prog_gzip.m4
-+ build\config\ac_prog_wget.m4 = build\config\ac_prog_wget.m4
-+ build\config\ax_cc_maxopt.m4 = build\config\ax_cc_maxopt.m4
-+ build\config\ax_cflags_warn_all_ansi.m4 = build\config\ax_cflags_warn_all_ansi.m4
-+ build\config\ax_check_compiler_flags.m4 = build\config\ax_check_compiler_flags.m4
-+ build\config\ax_compiler_vendor.m4 = build\config\ax_compiler_vendor.m4
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "autoload_configs", "autoload_configs", "{3C90CCF0-2CDD-4A7A-ACFF-208C1E271692}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\autoload_configs\alsa.conf.xml = conf\vanilla\autoload_configs\alsa.conf.xml
-+ conf\vanilla\autoload_configs\conference.conf.xml = conf\vanilla\autoload_configs\conference.conf.xml
-+ conf\vanilla\autoload_configs\console.conf.xml = conf\vanilla\autoload_configs\console.conf.xml
-+ conf\vanilla\autoload_configs\dialplan_directory.conf.xml = conf\vanilla\autoload_configs\dialplan_directory.conf.xml
-+ conf\vanilla\autoload_configs\dingaling.conf.xml = conf\vanilla\autoload_configs\dingaling.conf.xml
-+ conf\vanilla\autoload_configs\enum.conf.xml = conf\vanilla\autoload_configs\enum.conf.xml
-+ conf\vanilla\autoload_configs\event_multicast.conf.xml = conf\vanilla\autoload_configs\event_multicast.conf.xml
-+ conf\vanilla\autoload_configs\event_socket.conf.xml = conf\vanilla\autoload_configs\event_socket.conf.xml
-+ conf\vanilla\autoload_configs\ivr.conf.xml = conf\vanilla\autoload_configs\ivr.conf.xml
-+ conf\vanilla\autoload_configs\java.conf.xml = conf\vanilla\autoload_configs\java.conf.xml
-+ conf\vanilla\autoload_configs\limit.conf.xml = conf\vanilla\autoload_configs\limit.conf.xml
-+ conf\vanilla\autoload_configs\local_stream.conf.xml = conf\vanilla\autoload_configs\local_stream.conf.xml
-+ conf\vanilla\autoload_configs\logfile.conf.xml = conf\vanilla\autoload_configs\logfile.conf.xml
-+ conf\vanilla\autoload_configs\modules.conf.xml = conf\vanilla\autoload_configs\modules.conf.xml
-+ conf\vanilla\autoload_configs\openmrcp.conf.xml = conf\vanilla\autoload_configs\openmrcp.conf.xml
-+ conf\vanilla\autoload_configs\portaudio.conf.xml = conf\vanilla\autoload_configs\portaudio.conf.xml
-+ conf\vanilla\autoload_configs\rss.conf.xml = conf\vanilla\autoload_configs\rss.conf.xml
-+ conf\vanilla\autoload_configs\sofia.conf.xml = conf\vanilla\autoload_configs\sofia.conf.xml
-+ conf\vanilla\autoload_configs\spidermonkey.conf.xml = conf\vanilla\autoload_configs\spidermonkey.conf.xml
-+ conf\vanilla\autoload_configs\switch.conf.xml = conf\vanilla\autoload_configs\switch.conf.xml
-+ conf\vanilla\autoload_configs\syslog.conf.xml = conf\vanilla\autoload_configs\syslog.conf.xml
-+ conf\vanilla\autoload_configs\voicemail.conf.xml = conf\vanilla\autoload_configs\voicemail.conf.xml
-+ conf\vanilla\autoload_configs\wanpipe.conf.xml = conf\vanilla\autoload_configs\wanpipe.conf.xml
-+ conf\vanilla\autoload_configs\woomera.conf.xml = conf\vanilla\autoload_configs\woomera.conf.xml
-+ conf\vanilla\autoload_configs\xml_cdr.conf.xml = conf\vanilla\autoload_configs\xml_cdr.conf.xml
-+ conf\vanilla\autoload_configs\xml_curl.conf.xml = conf\vanilla\autoload_configs\xml_curl.conf.xml
-+ conf\vanilla\autoload_configs\xml_rpc.conf.xml = conf\vanilla\autoload_configs\xml_rpc.conf.xml
-+ conf\vanilla\autoload_configs\zeroconf.conf.xml = conf\vanilla\autoload_configs\zeroconf.conf.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "dialplan", "dialplan", "{C7E2382E-2C22-4D18-BF93-80C6A1FFA7AC}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\dialplan\default.xml = conf\vanilla\dialplan\default.xml
-+ conf\vanilla\dialplan\public.xml = conf\vanilla\dialplan\public.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "directory", "directory", "{FC71C66E-E268-4EAD-B1F5-F008DC382E83}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\directory\default.xml = conf\vanilla\directory\default.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "sip_profiles", "sip_profiles", "{8E2E8798-8B6F-4A55-8E4F-4E6FDE40ED26}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\sip_profiles\external.xml = conf\vanilla\sip_profiles\external.xml
-+ conf\vanilla\sip_profiles\internal.xml = conf\vanilla\sip_profiles\internal.xml
-+ conf\vanilla\sip_profiles\nat.xml = conf\vanilla\sip_profiles\nat.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "lang", "lang", "{09455AA9-C243-4F16-A1A1-A016881A2765}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\directory\default.xml = conf\vanilla\directory\default.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "en", "en", "{57199684-EC63-4A60-9DC6-11815AF6B413}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\en\en.xml = conf\vanilla\lang\en\en.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "de", "de", "{2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\de\de.xml = conf\vanilla\lang\de\de.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "fr", "fr", "{D4A12E4C-DBDA-4614-BA26-3425AE9F60F5}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\fr\fr.xml = conf\vanilla\lang\fr\fr.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "demo", "demo", "{D3E5C8ED-3A6A-4FEA-92A2-48A0BA865358}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\de\demo\demo.xml = conf\vanilla\lang\de\demo\demo.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "vm", "vm", "{CC3E7F48-2590-49CB-AD8B-BE3650F55462}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\de\vm\tts.xml = conf\vanilla\lang\de\vm\tts.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "demo", "demo", "{765EF1B9-5027-4820-BC37-A44466A51631}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\en\demo\demo.xml = conf\vanilla\lang\en\demo\demo.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "vm", "vm", "{713E4747-1126-40B1-BD84-58F9A7745423}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\en\vm\sounds.xml = conf\vanilla\lang\en\vm\sounds.xml
-+ conf\vanilla\lang\en\vm\tts.xml = conf\vanilla\lang\en\vm\tts.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "demo", "demo", "{F1B71990-EB04-4EB5-B28A-BC3EB6F7E843}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\fr\demo\demo.xml = conf\vanilla\lang\fr\demo\demo.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "vm", "vm", "{3DAF028C-AB5B-4183-A01B-DCC43F5A87F0}"
-+ ProjectSection(SolutionItems) = preProject
-+ conf\vanilla\lang\fr\vm\sounds.xml = conf\vanilla\lang\fr\vm\sounds.xml
-+ EndProjectSection
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Sound Files", "Sound Files", "{4F227C26-768F-46A3-8684-1D08A46FB374}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "unimrcp", "unimrcp", "{62F27B1A-C919-4A70-8478-51F178F3B18F}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FreeSwitchConsole", "w32\Console\FreeSwitchConsole.2010.vcxproj", "{1AF3A893-F7BE-43DD-B697-8AB2397C0D67}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FreeSwitchCoreLib", "w32\Library\FreeSwitchCore.2010.vcxproj", "{202D7A4E-760D-4D0E-AFA1-D7459CED30FF}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_g729", "src\mod\codecs\mod_g729\mod_g729.2010.vcxproj", "{1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_sndfile", "src\mod\formats\mod_sndfile\mod_sndfile.2010.vcxproj", "{AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_PortAudio", "src\mod\endpoints\mod_portaudio\mod_PortAudio.2010.vcxproj", "{5FD31A25-5D83-4794-8BEE-904DAD84CE71}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_speex", "src\mod\codecs\mod_speex\mod_speex.2010.vcxproj", "{5580D60E-0F77-4716-9CD4-B8E5986FA375}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "docs", "docs\docs.2010.vcxproj", "{1A1FF289-4FD6-4285-A422-D31DD67A4723}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dialplan_xml", "src\mod\dialplans\mod_dialplan_xml\mod_dialplan_xml.2010.vcxproj", "{07113B25-D3AF-4E04-BA77-4CD1171F022C}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_ldap", "src\mod\directories\mod_ldap\mod_ldap.2010.vcxproj", "{EC3E5C7F-EE09-47E2-80FE-546363D14A98}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dialplan_directory", "src\mod\dialplans\mod_dialplan_directory\mod_dialplan_directory.2010.vcxproj", "{A27CCA23-1541-4337-81A4-F0A6413078A0}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_event_multicast", "src\mod\event_handlers\mod_event_multicast\mod_event_multicast.2010.vcxproj", "{784113EF-44D9-4949-835D-7065D3C7AD08}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libteletone", "libs\libteletone\libteletone.2010.vcxproj", "{89385C74-5860-4174-9CAF-A39E7C48909C}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey", "src\mod\languages\mod_spidermonkey\mod_spidermonkey.2010.vcxproj", "{1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_cepstral", "src\mod\asr_tts\mod_cepstral\mod_cepstral.2010.vcxproj", "{692F6330-4D87-4C82-81DF-40DB5892636E}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_ilbc", "src\mod\codecs\mod_ilbc\mod_ilbc.2010.vcxproj", "{D3EC0AFF-76FC-4210-A825-9A17410660A3}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dingaling", "src\mod\endpoints\mod_dingaling\mod_dingaling.2010.vcxproj", "{FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_commands", "src\mod\applications\mod_commands\mod_commands.2010.vcxproj", "{30A5B29C-983E-4580-9FD0-D647CCDCC7EB}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_console", "src\mod\loggers\mod_console\mod_console.2010.vcxproj", "{1C453396-D912-4213-89FD-9B489162B7B5}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_rpc", "src\mod\xml_int\mod_xml_rpc\mod_xml_rpc.2010.vcxproj", "{CBEC7225-0C21-4DA8-978E-1F158F8AD950}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_rss", "src\mod\applications\mod_rss\mod_rss.2010.vcxproj", "{B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_conference", "src\mod\applications\mod_conference\mod_conference.2010.vcxproj", "{C24FB505-05D7-4319-8485-7540B44C8603}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dptools", "src\mod\applications\mod_dptools\mod_dptools.2010.vcxproj", "{B5881A85-FE70-4F64-8607-2CAAE52669C6}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_event_socket", "src\mod\event_handlers\mod_event_socket\mod_event_socket.2010.vcxproj", "{05515420-16DE-4E63-BE73-85BE85BA5142}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libdingaling", "libs\libdingaling\libdingaling.2010.vcxproj", "{1906D736-08BD-4EE1-924F-B536249B9A54}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsrtp", "libs\srtp\libsrtp.2010.vcxproj", "{EEF031CB-FED8-451E-A471-91EC8D4F6750}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsqlite", "libs\win32\sqlite\sqlite.2010.vcxproj", "{6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpcre", "libs\win32\pcre\libpcre.2010.vcxproj", "{8D04B550-D240-4A44-8A18-35DA3F7038D9}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpcre Generate pcre_chartables.c", "libs\win32\pcre\pcre_chartables.c.2010.vcxproj", "{1CED5987-A529-46DC-B30F-870D85FF9C94}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libapr", "libs\win32\apr\libapr.2010.vcxproj", "{F6C55D93-B927-4483-BB69-15AEF3DD2DFF}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libaprutil", "libs\win32\apr-util\libaprutil.2010.vcxproj", "{F057DA7F-79E5-4B00-845C-EF446EF055E3}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "iksemel", "libs\win32\iksemel\iksemel.2010.vcxproj", "{E727E8F6-935D-46FE-8B0E-37834748A0E3}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsndfile", "libs\win32\libsndfile\libsndfile.2010.vcxproj", "{3D0370CA-BED2-4657-A475-32375CBCB6E4}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curllib", "libs\win32\curl\curllib.2010.vcxproj", "{87EE9DA4-DE1E-4448-8324-183C98DCA588}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79} = {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xml", "libs\win32\apr-util\xml.2010.vcxproj", "{155844C3-EC5F-407F-97A4-A2DDADED9B2F}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "js", "libs\win32\js\js.2010.vcxproj", "{204FA0DE-305D-4414-AE2E-F195A23F390D}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_sofia", "src\mod\endpoints\mod_sofia\mod_sofia.2010.vcxproj", "{0DF3ABD0-DDC0-4265-B778-07C66780979B}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download PTHREAD", "libs\win32\Download PTHREAD.2010.vcxproj", "{8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pthread", "libs\win32\pthread\pthread.2010.vcxproj", "{DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_g723_1", "src\mod\codecs\mod_g723_1\mod_g723_1.2010.vcxproj", "{FEA1EEF7-876F-48DE-88BF-C0E3E606D758}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_iSAC", "src\mod\codecs\mod_isac\mod_iSAC.2010.vcxproj", "{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_native_file", "src\mod\formats\mod_native_file\mod_native_file.2010.vcxproj", "{9254C4B0-6F60-42B6-BB3A-36D63FC001C7}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_core_db", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_core_db.2010.vcxproj", "{ACFFF684-4D19-4D48-AF12-88EA1D778BDF}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_teletone", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_teletone.2010.vcxproj", "{8F992C49-6C51-412F-B2A3-34EAB708EB65}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libudns", "libs\win32\udns\libudns.2010.vcxproj", "{4043FC6A-9A30-4577-8AD5-9B233C9575D8}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_enum", "src\mod\applications\mod_enum\mod_enum.2010.vcxproj", "{71A967D5-0E99-4CEF-A587-98836EE6F2EF}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_odbc", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_odbc.2010.vcxproj", "{0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_curl", "src\mod\xml_int\mod_xml_curl\mod_xml_curl.2010.vcxproj", "{AB91A099-7690-4ECF-8994-E458F4EA1ED4}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_en", "src\mod\say\mod_say_en\mod_say_en.2010.vcxproj", "{988CACF7-3FCB-4992-BE69-77872AE67DC8}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "portaudio", "libs\portaudio\build\msvc\portaudio.2010.vcxproj", "{0A18A071-125E-442F-AFF7-A3F68ABECF99}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_cdr", "src\mod\xml_int\mod_xml_cdr\mod_xml_cdr.2010.vcxproj", "{08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_amr", "src\mod\codecs\mod_amr\mod_amr.2010.vcxproj", "{8DEB383C-4091-4F42-A56F-C9E46D552D79}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_h26x", "src\mod\codecs\mod_h26x\mod_h26x.2010.vcxproj", "{2C3C2423-234B-4772-8899-D3B137E5CA35}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_esf", "src\mod\applications\mod_esf\mod_esf.2010.vcxproj", "{3850D93A-5F24-4922-BC1C-74D08C37C256}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_local_stream", "src\mod\formats\mod_local_stream\mod_local_stream.2010.vcxproj", "{2CA40887-1622-46A1-A7F9-17FD7E7E545B}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_socket", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_socket.2010.vcxproj", "{028C7278-05D7-4E18-82FE-BE231B844F41}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_voicemail", "src\mod\applications\mod_voicemail\mod_voicemail.2010.vcxproj", "{D7F1E3F2-A3F4-474C-8555-15122571AF52}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_de", "src\mod\say\mod_say_de\mod_say_de.2010.vcxproj", "{5BC072DB-3826-48EA-AF34-FE32AA01E83B}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_es", "src\mod\say\mod_say_es\mod_say_es.2010.vcxproj", "{FA429E98-8B03-45E6-A096-A4BC5E821DE4}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_fr", "src\mod\say\mod_say_fr\mod_say_fr.2010.vcxproj", "{06E3A538-AB32-44F2-B477-755FF9CB5D37}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_it", "src\mod\say\mod_say_it\mod_say_it.2010.vcxproj", "{6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_nl", "src\mod\say\mod_say_nl\mod_say_nl.2010.vcxproj", "{A4B122CF-5196-476B-8C0E-D8BD59AC3C14}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_fifo", "src\mod\applications\mod_fifo\mod_fifo.2010.vcxproj", "{75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_db", "src\mod\applications\mod_db\mod_db.2010.vcxproj", "{F6A33240-8F29-48BD-98F0-826995911799}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_expr", "src\mod\applications\mod_expr\mod_expr.2010.vcxproj", "{65A6273D-FCAB-4C55-B09E-65100141A5D4}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_dialplan_asterisk", "src\mod\dialplans\mod_dialplan_asterisk\mod_dialplan_asterisk.2010.vcxproj", "{E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_logfile", "src\mod\loggers\mod_logfile\mod_logfile.2010.vcxproj", "{D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_cdr_csv", "src\mod\event_handlers\mod_cdr_csv\mod_cdr_csv.2010.vcxproj", "{44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_tone_stream", "src\mod\formats\mod_tone_stream\mod_tone_stream.2010.vcxproj", "{6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_fsv", "src\mod\applications\mod_fsv\mod_fsv.2010.vcxproj", "{E3246D17-E29B-4AB5-962A-C69B0C5837BB}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spidermonkey_curl", "src\mod\languages\mod_spidermonkey\mod_spidermonkey_curl.2010.vcxproj", "{36E854E3-CE12-4348-A125-CCF3F9D74813}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lua", "src\mod\languages\mod_lua\mod_lua.2010.vcxproj", "{7B077E7F-1BE7-4291-AB86-55E527B25CAC}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download sphinxbase", "libs\win32\Download sphinxbase.2010.vcxproj", "{4F92B672-DADB-4047-8D6A-4BB3796733FD}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download sphinxmodel", "libs\win32\Download sphinxmodel.2010.vcxproj", "{2DEE4895-1134-439C-B688-52203E57D878}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download pocketsphinx", "libs\win32\Download pocketsphinx.2010.vcxproj", "{AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sphinxbase", "libs\win32\sphinxbase\sphinxbase.2010.vcxproj", "{2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pocketsphinx", "libs\win32\pocketsphinx\pocketsphinx.2010.vcxproj", "{94001A0E-A837-445C-8004-F918F10D0226}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_pocketsphinx", "src\mod\asr_tts\mod_pocketsphinx\mod_pocketsphinx.2010.vcxproj", "{2286DA73-9FC5-45BC-A508-85994C3317AB}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 8khzsound", "libs\win32\Download 8khz Sounds.2010.vcxproj", "{3CE1DC99-8246-4DB1-A709-74F19F08EC67}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 16khzsound", "libs\win32\Download 16khz Sounds.2010.vcxproj", "{87A1FE3D-F410-4C8E-9591-8C625985BC70}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "8khz", "libs\win32\Sound_Files\8khz.2010.vcxproj", "{7A8D8174-B355-4114-AFC1-04777CB9DE0A}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "16khz", "libs\win32\Sound_Files\16khz.2010.vcxproj", "{7EB71250-F002-4ED8-92CA-CA218114537A}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 32khzsound", "libs\win32\Dowload 32khz Sounds.2010.vcxproj", "{6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "32khz", "libs\win32\Sound_Files\32khz.2010.vcxproj", "{464AAB78-5489-4916-BE51-BF8D61822311}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "flite", "libs\win32\flite\flite.2010.vcxproj", "{0AD1177E-1FD8-4643-9391-431467A11084}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_flite", "src\mod\asr_tts\mod_flite\mod_flite.2010.vcxproj", "{66444AEE-554C-11DD-A9F0-8C5D56D89593}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download FLITE", "libs\win32\Download FLITE.2010.vcxproj", "{D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download LAME", "libs\win32\Download LAME.2010.vcxproj", "{D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download LIBSHOUT", "libs\win32\Download LIBSHOUT.2010.vcxproj", "{D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download OGG", "libs\win32\Download OGG.2010.vcxproj", "{D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmp3lame", "libs\win32\libmp3lame\libmp3lame.2010.vcxproj", "{E316772F-5D8F-4F2A-8F71-094C3E859D34}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libshout", "libs\win32\libshout\libshout.vcxproj", "{D3D8B329-20BE-475E-9E83-653CEA0E0EF5}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_shout", "src\mod\formats\mod_shout\mod_shout.vcxproj", "{38FE0559-9910-43A8-9E45-3E5004C27692}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libogg", "libs\win32\libogg\libogg.2010.vcxproj", "{0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_snom", "src\mod\applications\mod_snom\mod_snom.2010.vcxproj", "{2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_zh", "src\mod\say\mod_say_zh\mod_say_zh.2010.vcxproj", "{B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_managed", "src\mod\languages\mod_managed\mod_managed.2010.vcxproj", "{7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}"
-+EndProject
-+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FreeSWITCH.Managed.2010", "src\mod\languages\mod_managed\managed\FreeSWITCH.Managed.2010.csproj", "{834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download mpg123", "libs\win32\Download mpg123.2010.vcxproj", "{E796E337-DE78-4303-8614-9A590862EE95}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmpg123", "libs\win32\mpg123\libmpg123.2010.vcxproj", "{419C8F80-D858-4B48-A25C-AF4007608137}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_loopback", "src\mod\endpoints\mod_loopback\mod_loopback.2010.vcxproj", "{B3F424EC-3D8F-417C-B244-3919D5E1A577}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_vmd", "src\mod\applications\mod_vmd\mod_vmd.2010.vcxproj", "{14E4A972-9CFB-436D-B0A5-4943F3F80D47}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libg722_1", "libs\win32\libg722_1\libg722_1.vcxproj", "{1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_siren", "src\mod\codecs\mod_siren\mod_siren.2010.vcxproj", "{0B6C905B-142E-4999-B39D-92FF7951E921}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "esl", "libs\esl\src\esl.2010.vcxproj", "{CF405366-9558-4AE8-90EF-5E21B51CCB4E}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fs_cli", "libs\esl\fs_cli.2010.vcxproj", "{D2FB8043-D208-4AEE-8F18-3B5857C871B9}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_easyroute", "src\mod\applications\mod_easyroute\mod_easyroute.2010.vcxproj", "{329FD5B0-EF28-4606-86D0-F6EA21CF8E36}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lcr", "src\mod\applications\mod_lcr\mod_lcr.2010.vcxproj", "{1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libtiff", "libs\spandsp\src\libtiff.2010.vcxproj", "{401A40CD-5DB4-4E34-AC68-FA99E9FAC014}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspandsp", "libs\spandsp\src\libspandsp.2010.vcxproj", "{1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspeex", "libs\speex\win32\VS2008\libspeex\libspeex.vcxproj", "{E972C52F-9E85-4D65-B19C-031E511E9DB4}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspeexdsp", "libs\speex\win32\VS2008\libspeexdsp\libspeexdsp.vcxproj", "{03207781-0D1C-4DB3-A71D-45C608F28DBD}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libilbc", "libs\ilbc\libilbc.2010.vcxproj", "{9A5DDF08-C88C-4A35-B7F6-D605228446BD}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lua51", "src\mod\languages\mod_lua\lua\lua.2010.vcxproj", "{D0B36172-CD76-454A-9B89-990025266C2A}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_opal", "src\mod\endpoints\mod_opal\mod_opal_2010.vcxproj", "{05C9FB27-480E-4D53-B3B7-6338E2526666}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skinny", "src\mod\endpoints\mod_skinny\mod_skinny_2010.vcxproj", "{CC1DD008-9406-448D-A0AD-33C3186CFADB}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_rtmp", "src\mod\endpoints\mod_rtmp\mod_rtmp_2010.vcxproj", "{48414740-C693-4968-9846-EE058020C64F}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_at_dictionary", "libs\spandsp\src\msvc\make_at_dictionary.2010.vcxproj", "{DEE932AB-5911-4700-9EEB-8C7090A0A330}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_modem_filter", "libs\spandsp\src\msvc\make_modem_filter.2010.vcxproj", "{329A6FA0-0FCC-4435-A950-E670AEFA9838}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skel", "src\mod\applications\mod_skel\mod_skel.2010.vcxproj", "{11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_skypopen", "src\mod\endpoints\mod_skypopen\mod_skypopen.2010.vcxproj", "{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 32khz music", "libs\win32\Dowload 32khz music.2010.vcxproj", "{1F0A8A77-E661-418F-BB92-82172AE43803}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 8khz music", "libs\win32\Download 8khz music.2010.vcxproj", "{4F5C9D55-98EF-4256-8311-32D7BD360406}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download 16khz music", "libs\win32\Download 16khz music.2010.vcxproj", "{E10571C4-E7F4-4608-B5F2-B22E7EB95400}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "8khz music", "libs\win32\Sound_Files\8khzmusic.2010.vcxproj", "{D1ABE208-6442-4FB4-9AAD-1677E41BC870}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "16khz music", "libs\win32\Sound_Files\16khzmusic.2010.vcxproj", "{BA599D0A-4310-4505-91DA-6A6447B3E289}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "32khz music", "libs\win32\Sound_Files\32khzmusic.2010.vcxproj", "{EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_nibblebill", "src\mod\applications\mod_nibblebill\mod_nibblebill.2010.vcxproj", "{3C977801-FE88-48F2-83D3-FA2EBFF6688E}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_ru", "src\mod\say\mod_say_ru\mod_say_ru.2010.vcxproj", "{0382E8FD-CFDC-41C0-8B03-792C7C84FC31}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_valet_parking", "src\mod\applications\mod_valet_parking\mod_valet_parking.2010.vcxproj", "{432DB165-1EB2-4781-A9C0-71E62610B20A}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libbroadvoice", "libs\broadvoice\src\libbroadvoice.2010.vcxproj", "{CF70F278-3364-4395-A2E1-23501C9B8AD2}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_bv", "src\mod\codecs\mod_bv\mod_bv.2010.vcxproj", "{D5C87B19-150D-4EF3-A671-96589BD2D14A}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "aprtoolkit", "libs\unimrcp\libs\apr-toolkit\aprtoolkit.2010.vcxproj", "{13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F} = {155844C3-EC5F-407F-97A4-A2DDADED9B2F}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mpf", "libs\unimrcp\libs\mpf\mpf.2010.vcxproj", "{B5A00BFA-6083-4FAE-A097-71642D6473B5}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcp", "libs\unimrcp\libs\mrcp\mrcp.2010.vcxproj", "{1C320193-46A6-4B34-9C56-8AB584FC1B56}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpclient", "libs\unimrcp\libs\mrcp-client\mrcpclient.2010.vcxproj", "{72782932-37CC-46AE-8C7F-9A7B1A6EE108}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpsignaling", "libs\unimrcp\libs\mrcp-signaling\mrcpsignaling.2010.vcxproj", "{12A49562-BAB9-43A3-A21D-15B60BBB4C31}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpv2transport", "libs\unimrcp\libs\mrcpv2-transport\mrcpv2transport.2010.vcxproj", "{A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unirtsp", "libs\unimrcp\libs\uni-rtsp\unirtsp.2010.vcxproj", "{504B3154-7A4F-459D-9877-B951021C3F1F}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpsofiasip", "libs\unimrcp\modules\mrcp-sofiasip\mrcpsofiasip.2010.vcxproj", "{746F3632-5BB2-4570-9453-31D6D58A7D8E}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mrcpunirtsp", "libs\unimrcp\modules\mrcp-unirtsp\mrcpunirtsp.2010.vcxproj", "{DEB01ACB-D65F-4A62-AED9-58C1054499E9}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_unimrcp", "src\mod\asr_tts\mod_unimrcp\mod_unimrcp.2010.vcxproj", "{D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download CELT", "libs\win32\Download CELT.vcxproj", "{FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libcelt", "libs\win32\celt\libcelt.vcxproj", "{ABB71A76-42B0-47A4-973A-42E3D920C6FD}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_celt", "src\mod\codecs\mod_celt\mod_celt.vcxproj", "{4D418176-3B33-47E6-A63E-01BA34ADD21C}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FSComm", "fscomm\FSComm.2010.vcxproj", "{7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_curl", "src\mod\applications\mod_curl\mod_curl.2010.vcxproj", "{EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download JSON", "libs\win32\Download JSON.2010.vcxproj", "{B808178B-82F0-4CF4-A2B1-921939FA24D0}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjson", "libs\win32\json\libjson.2010.vcxproj", "{9778F1C0-09BC-4698-8EBC-BD982247209A}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_silk", "src\mod\codecs\mod_silk\mod_silk.2010.vcxproj", "{AFA983D6-4569-4F88-BA94-555ED00FD9A8}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Silk_FIX", "libs\silk\src\Silk_FIX.2010.vcxproj", "{56B91D01-9150-4BBF-AFA1-5B68AB991B76}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_avmd", "src\mod\applications\mod_avmd\mod_avmd.2010.vcxproj", "{990BAA76-89D3-4E38-8479-C7B28784EFC8}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spandsp", "src\mod\applications\mod_spandsp\mod_spandsp.2010.vcxproj", "{1E21AFE0-6FDB-41D2-942D-863607C24B91}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_hash", "src\mod\applications\mod_hash\mod_hash.2010.vcxproj", "{2E250296-0C08-4342-9C8A-BCBDD0E7DF65}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "openssl", "openssl", "{E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libeay32", "libs\win32\openssl\libeay32.2010.vcxproj", "{D331904D-A00A-4694-A5A3-FCFF64AB5DBE}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssleay32", "libs\win32\openssl\ssleay32.2010.vcxproj", "{B4B62169-5AD4-4559-8707-3D933AC5DB39}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "openssl", "libs\win32\openssl\openssl.2010.vcxproj", "{25BD39B1-C8BF-4676-A738-9CABD9C6BC79}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD} = {D578E676-7EC8-4548-BD8B-845C635F14AD}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download OPENSSL", "libs\win32\Download OPENSSL.2010.vcxproj", "{D578E676-7EC8-4548-BD8B-845C635F14AD}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsofia_sip_ua_static", "libs\win32\sofia\libsofia_sip_ua_static.2010.vcxproj", "{70A49BC2-7500-41D0-B75D-EDCC5BE987A0}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_directory", "src\mod\applications\mod_directory\mod_directory.2010.vcxproj", "{B889A18E-70A7-44B5-B2C9-47798D4F43B3}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_h323", "src\mod\endpoints\mod_h323\mod_h323.2010.vcxproj", "{05C9FB27-480E-4D53-B3B7-7338E2514666}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_distributor", "src\mod\applications\mod_distributor\mod_distributor.2010.vcxproj", "{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}"
-+EndProject
-+Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "Setup", "w32\Setup\Setup.wixproj", "{47213370-B933-487D-9F45-BCA26D7E2B6F}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_pt", "src\mod\say\mod_say_pt\mod_say_pt.2010.vcxproj", "{7C22BDFF-CC09-400C-8A09-660733980028}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ldns", "libs\win32\ldns\ldns-lib\ldns-lib.2010.vcxproj", "{23B4D303-79FC-49E0-89E2-2280E7E28940}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_callcenter", "src\mod\applications\mod_callcenter\mod_callcenter.2010.vcxproj", "{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_blacklist", "src\mod\applications\mod_blacklist\mod_blacklist.2010.vcxproj", "{50AAC2CE-BFC9-4912-87CC-C6381850D735}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_spy", "src\mod\applications\mod_spy\mod_spy.2010.vcxproj", "{A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_httapi", "src\mod\applications\mod_httapi\mod_httapi.2010.vcxproj", "{4748FF56-CA85-4809-97D6-A94C0FAC1D77}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_abstraction", "src\mod\applications\mod_abstraction\mod_abstraction.2010.vcxproj", "{60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_sms", "src\mod\applications\mod_sms\mod_sms.2010.vcxproj", "{2469B306-B027-4FF2-8815-C9C1EA2CAE79}"
-+EndProject
-+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "xmlrpc-c", "xmlrpc-c", "{9DE35039-A8F6-4FBF-B1B6-EB527F802411}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gsmlib", "src\mod\endpoints\mod_gsmopen\gsmlib\gsmlib-1.10-patched-13ubuntu\win32\gsmlib.2010.vcxproj", "{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_gsmopen", "src\mod\endpoints\mod_gsmopen\mod_gsmopen.2010.vcxproj", "{74B120FF-6935-4DFE-A142-CDB6BEA99C90}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libzrtp", "libs\libzrtp\projects\win\libzrtp.2010.vcxproj", "{C13CC324-0032-4492-9A30-310A6BD64FF5}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_redis", "src\mod\applications\mod_redis\mod_redis.2010.vcxproj", "{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download libjpeg", "libs\win32\Download libjpeg.2010.vcxproj", "{652AD5F7-8488-489F-AAD0-7FBE064703B6}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjpeg", "libs\win32\libjpeg\libjpeg.2010.vcxproj", "{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6} = {652AD5F7-8488-489F-AAD0-7FBE064703B6}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "abyss", "libs\win32\xmlrpc-c\abyss.2010.vcxproj", "{D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647} = {0D108721-EAE8-4BAF-8102-D8960EC93647}
-+ {B535402E-38D2-4D54-8360-423ACBD17192} = {B535402E-38D2-4D54-8360-423ACBD17192}
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA} = {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gennmtab", "libs\win32\xmlrpc-c\gennmtab.2010.vcxproj", "{BED7539C-0099-4A14-AD5D-30828F15A171}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647} = {0D108721-EAE8-4BAF-8102-D8960EC93647}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmlparse", "libs\win32\xmlrpc-c\xmlparse.2010.vcxproj", "{0D108721-EAE8-4BAF-8102-D8960EC93647}"
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmlrpc", "libs\win32\xmlrpc-c\xmlrpc.2010.vcxproj", "{CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647} = {0D108721-EAE8-4BAF-8102-D8960EC93647}
-+ {B535402E-38D2-4D54-8360-423ACBD17192} = {B535402E-38D2-4D54-8360-423ACBD17192}
-+ EndProjectSection
-+EndProject
-+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmltok", "libs\win32\xmlrpc-c\xmltok.2010.vcxproj", "{B535402E-38D2-4D54-8360-423ACBD17192}"
-+ ProjectSection(ProjectDependencies) = postProject
-+ {BED7539C-0099-4A14-AD5D-30828F15A171} = {BED7539C-0099-4A14-AD5D-30828F15A171}
-+ EndProjectSection
-+EndProject
-+Global
-+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
-+ All|Win32 = All|Win32
-+ All|x64 = All|x64
-+ All|x64 Setup = All|x64 Setup
-+ All|x86 Setup = All|x86 Setup
-+ Debug|Win32 = Debug|Win32
-+ Debug|x64 = Debug|x64
-+ Debug|x64 Setup = Debug|x64 Setup
-+ Debug|x86 Setup = Debug|x86 Setup
-+ Release|Win32 = Release|Win32
-+ Release|x64 = Release|x64
-+ Release|x64 Setup = Release|x64 Setup
-+ Release|x86 Setup = Release|x86 Setup
-+ EndGlobalSection
-+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|Win32.ActiveCfg = Release|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64.ActiveCfg = Release|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64.Build.0 = Release|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64 Setup.ActiveCfg = Release|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64 Setup.Build.0 = Release|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x86 Setup.ActiveCfg = Release|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|Win32.Build.0 = Debug|Win32
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x64.ActiveCfg = Debug|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x64.Build.0 = Debug|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|Win32.ActiveCfg = Release|Win32
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|Win32.Build.0 = Release|Win32
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|x64.ActiveCfg = Release|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|x64.Build.0 = Release|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|Win32.ActiveCfg = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64.ActiveCfg = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64.Build.0 = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64 Setup.ActiveCfg = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64 Setup.Build.0 = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x86 Setup.ActiveCfg = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|Win32.Build.0 = Debug|Win32
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x64.ActiveCfg = Debug|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x64.Build.0 = Debug|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|Win32.ActiveCfg = Release|Win32
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|Win32.Build.0 = Release|Win32
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|x64.ActiveCfg = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|x64.Build.0 = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|Win32.ActiveCfg = Release Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64.ActiveCfg = Release Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64.Build.0 = Release Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64 Setup.ActiveCfg = Release Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64 Setup.Build.0 = Release Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x86 Setup.ActiveCfg = Release Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|Win32.ActiveCfg = Debug Passthrough|Win32
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|Win32.Build.0 = Debug Passthrough|Win32
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x64.ActiveCfg = Debug Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x64.Build.0 = Debug Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x64 Setup.ActiveCfg = Debug Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x86 Setup.ActiveCfg = Debug Passthrough|Win32
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|Win32.ActiveCfg = Release Passthrough|Win32
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|Win32.Build.0 = Release Passthrough|Win32
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|x64.ActiveCfg = Release Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|x64.Build.0 = Release Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|x64 Setup.ActiveCfg = Release Passthrough|x64
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release|x86 Setup.ActiveCfg = Release Passthrough|Win32
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|Win32.ActiveCfg = Release|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64.ActiveCfg = Release|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64.Build.0 = Release|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64 Setup.ActiveCfg = Release|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64 Setup.Build.0 = Release|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x86 Setup.ActiveCfg = Release|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|Win32.Build.0 = Debug|Win32
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x64.ActiveCfg = Debug|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x64.Build.0 = Debug|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|Win32.ActiveCfg = Release|Win32
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|Win32.Build.0 = Release|Win32
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|x64.ActiveCfg = Release|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|x64.Build.0 = Release|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|Win32.ActiveCfg = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64.ActiveCfg = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64.Build.0 = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64 Setup.ActiveCfg = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64 Setup.Build.0 = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x86 Setup.ActiveCfg = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|Win32.Build.0 = Debug|Win32
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x64.ActiveCfg = Debug|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x64.Build.0 = Debug|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|Win32.ActiveCfg = Release|Win32
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|Win32.Build.0 = Release|Win32
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|x64.ActiveCfg = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|x64.Build.0 = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|Win32.ActiveCfg = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x64.ActiveCfg = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x64.Build.0 = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x64 Setup.ActiveCfg = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x64 Setup.Build.0 = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.All|x86 Setup.ActiveCfg = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|Win32.Build.0 = Debug|Win32
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|x64.ActiveCfg = Debug|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|x64.Build.0 = Debug|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|Win32.ActiveCfg = Release|Win32
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|Win32.Build.0 = Release|Win32
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|x64.ActiveCfg = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|x64.Build.0 = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|Win32.ActiveCfg = Release|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|x64.ActiveCfg = Release|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|x64.ActiveCfg = Debug|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release|Win32.ActiveCfg = Release|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release|x64.ActiveCfg = Release|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|Win32.ActiveCfg = Release|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64.ActiveCfg = Release|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64.Build.0 = Release|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64 Setup.ActiveCfg = Release|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64 Setup.Build.0 = Release|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x86 Setup.ActiveCfg = Release|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|Win32.Build.0 = Debug|Win32
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x64.ActiveCfg = Debug|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x64.Build.0 = Debug|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|Win32.ActiveCfg = Release|Win32
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|Win32.Build.0 = Release|Win32
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|x64.ActiveCfg = Release|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|x64.Build.0 = Release|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|Win32.ActiveCfg = Release MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64.ActiveCfg = Release MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64.Build.0 = Release MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64 Setup.ActiveCfg = Release MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64 Setup.Build.0 = Release MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x86 Setup.ActiveCfg = Release MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|Win32.ActiveCfg = Debug MS-LDAP|Win32
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|Win32.Build.0 = Debug MS-LDAP|Win32
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x64.ActiveCfg = Debug MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x64.Build.0 = Debug MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x64 Setup.ActiveCfg = Debug MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x86 Setup.ActiveCfg = Debug MS-LDAP|Win32
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|Win32.ActiveCfg = Release MS-LDAP|Win32
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|Win32.Build.0 = Release MS-LDAP|Win32
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|x64.ActiveCfg = Release MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|x64.Build.0 = Release MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|x64 Setup.ActiveCfg = Release MS-LDAP|x64
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release|x86 Setup.ActiveCfg = Release MS-LDAP|Win32
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|Win32.ActiveCfg = Release|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64.ActiveCfg = Release|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64.Build.0 = Release|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64 Setup.ActiveCfg = Release|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64 Setup.Build.0 = Release|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x86 Setup.ActiveCfg = Release|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|Win32.Build.0 = Debug|Win32
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x64.ActiveCfg = Debug|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x64.Build.0 = Debug|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|Win32.ActiveCfg = Release|Win32
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|Win32.Build.0 = Release|Win32
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|x64.ActiveCfg = Release|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|x64.Build.0 = Release|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.All|Win32.ActiveCfg = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64.ActiveCfg = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64.Build.0 = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64 Setup.ActiveCfg = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64 Setup.Build.0 = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x86 Setup.ActiveCfg = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|Win32.Build.0 = Debug|Win32
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x64.ActiveCfg = Debug|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x64.Build.0 = Debug|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|Win32.ActiveCfg = Release|Win32
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|Win32.Build.0 = Release|Win32
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|x64.ActiveCfg = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|x64.Build.0 = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {784113EF-44D9-4949-835D-7065D3C7AD08}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.All|Win32.ActiveCfg = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64.ActiveCfg = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64.Build.0 = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64 Setup.ActiveCfg = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64 Setup.Build.0 = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x86 Setup.ActiveCfg = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|Win32.Build.0 = Debug|Win32
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x64.ActiveCfg = Debug|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x64.Build.0 = Debug|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|Win32.ActiveCfg = Release|Win32
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|Win32.Build.0 = Release|Win32
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|x64.ActiveCfg = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|x64.Build.0 = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {89385C74-5860-4174-9CAF-A39E7C48909C}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|Win32.ActiveCfg = Release|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x64.ActiveCfg = Release|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x64.Build.0 = Release|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x64 Setup.ActiveCfg = Release|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x64 Setup.Build.0 = Release|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.All|x86 Setup.ActiveCfg = Release|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|Win32.Build.0 = Debug|Win32
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|x64.ActiveCfg = Debug|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|x64.Build.0 = Debug|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|Win32.ActiveCfg = Release|Win32
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|Win32.Build.0 = Release|Win32
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|x64.ActiveCfg = Release|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|x64.Build.0 = Release|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.All|Win32.ActiveCfg = Release|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64.ActiveCfg = Release|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64.Build.0 = Release|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64 Setup.ActiveCfg = Release|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64 Setup.Build.0 = Release|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x86 Setup.ActiveCfg = Release|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|x64.ActiveCfg = Debug|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.Release|Win32.ActiveCfg = Release|Win32
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.Release|x64.ActiveCfg = Release|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {692F6330-4D87-4C82-81DF-40DB5892636E}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|Win32.ActiveCfg = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64.ActiveCfg = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64.Build.0 = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64 Setup.ActiveCfg = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64 Setup.Build.0 = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x86 Setup.ActiveCfg = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|Win32.Build.0 = Debug|Win32
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x64.ActiveCfg = Debug|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x64.Build.0 = Debug|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|Win32.ActiveCfg = Release|Win32
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|Win32.Build.0 = Release|Win32
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|x64.ActiveCfg = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|x64.Build.0 = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|Win32.ActiveCfg = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64.ActiveCfg = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64.Build.0 = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64 Setup.ActiveCfg = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64 Setup.Build.0 = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x86 Setup.ActiveCfg = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|Win32.Build.0 = Debug|Win32
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x64.ActiveCfg = Debug|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x64.Build.0 = Debug|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|Win32.ActiveCfg = Release|Win32
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|Win32.Build.0 = Release|Win32
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|x64.ActiveCfg = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|x64.Build.0 = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|Win32.ActiveCfg = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64.ActiveCfg = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64.Build.0 = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64 Setup.ActiveCfg = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64 Setup.Build.0 = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x86 Setup.ActiveCfg = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|Win32.Build.0 = Debug|Win32
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x64.ActiveCfg = Debug|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x64.Build.0 = Debug|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|Win32.ActiveCfg = Release|Win32
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|Win32.Build.0 = Release|Win32
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|x64.ActiveCfg = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|x64.Build.0 = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.All|Win32.ActiveCfg = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64.ActiveCfg = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64.Build.0 = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64 Setup.ActiveCfg = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64 Setup.Build.0 = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.All|x86 Setup.ActiveCfg = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|Win32.Build.0 = Debug|Win32
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x64.ActiveCfg = Debug|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x64.Build.0 = Debug|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Release|Win32.ActiveCfg = Release|Win32
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Release|Win32.Build.0 = Release|Win32
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Release|x64.ActiveCfg = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Release|x64.Build.0 = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {1C453396-D912-4213-89FD-9B489162B7B5}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|Win32.ActiveCfg = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64.ActiveCfg = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64.Build.0 = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64 Setup.ActiveCfg = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64 Setup.Build.0 = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x86 Setup.ActiveCfg = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|Win32.Build.0 = Debug|Win32
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x64.ActiveCfg = Debug|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x64.Build.0 = Debug|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|Win32.ActiveCfg = Release|Win32
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|Win32.Build.0 = Release|Win32
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|x64.ActiveCfg = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|x64.Build.0 = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|Win32.ActiveCfg = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64.ActiveCfg = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64.Build.0 = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64 Setup.ActiveCfg = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64 Setup.Build.0 = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x86 Setup.ActiveCfg = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|Win32.Build.0 = Debug|Win32
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x64.ActiveCfg = Debug|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x64.Build.0 = Debug|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|Win32.ActiveCfg = Release|Win32
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|Win32.Build.0 = Release|Win32
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|x64.ActiveCfg = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|x64.Build.0 = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.All|Win32.ActiveCfg = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64.ActiveCfg = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64.Build.0 = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64 Setup.ActiveCfg = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64 Setup.Build.0 = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.All|x86 Setup.ActiveCfg = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|Win32.Build.0 = Debug|Win32
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x64.ActiveCfg = Debug|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x64.Build.0 = Debug|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Release|Win32.ActiveCfg = Release|Win32
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Release|Win32.Build.0 = Release|Win32
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Release|x64.ActiveCfg = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Release|x64.Build.0 = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {C24FB505-05D7-4319-8485-7540B44C8603}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|Win32.ActiveCfg = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64.ActiveCfg = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64.Build.0 = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64 Setup.ActiveCfg = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64 Setup.Build.0 = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x86 Setup.ActiveCfg = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|Win32.Build.0 = Debug|Win32
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x64.ActiveCfg = Debug|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x64.Build.0 = Debug|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|Win32.ActiveCfg = Release|Win32
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|Win32.Build.0 = Release|Win32
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|x64.ActiveCfg = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|x64.Build.0 = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.All|Win32.ActiveCfg = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64.ActiveCfg = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64.Build.0 = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64 Setup.ActiveCfg = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64 Setup.Build.0 = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x86 Setup.ActiveCfg = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|Win32.Build.0 = Debug|Win32
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x64.ActiveCfg = Debug|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x64.Build.0 = Debug|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|Win32.ActiveCfg = Release|Win32
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|Win32.Build.0 = Release|Win32
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|x64.ActiveCfg = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|x64.Build.0 = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {05515420-16DE-4E63-BE73-85BE85BA5142}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.All|Win32.ActiveCfg = Release DLL|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64.ActiveCfg = Release DLL|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64.Build.0 = Release DLL|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64 Setup.ActiveCfg = Release DLL|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64 Setup.Build.0 = Release DLL|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x86 Setup.ActiveCfg = Release DLL|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|Win32.Build.0 = Debug|Win32
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x64.ActiveCfg = Debug|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x64.Build.0 = Debug|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|Win32.ActiveCfg = Release|Win32
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|Win32.Build.0 = Release|Win32
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|x64.ActiveCfg = Release|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|x64.Build.0 = Release|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {1906D736-08BD-4EE1-924F-B536249B9A54}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|Win32.ActiveCfg = Release Dll|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64.ActiveCfg = Release Dll|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64.Build.0 = Release Dll|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64 Setup.ActiveCfg = Release Dll|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64 Setup.Build.0 = Release Dll|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x86 Setup.ActiveCfg = Release Dll|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|Win32.Build.0 = Debug|Win32
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x64.ActiveCfg = Debug|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x64.Build.0 = Debug|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|Win32.ActiveCfg = Release|Win32
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|Win32.Build.0 = Release|Win32
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|x64.ActiveCfg = Release|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|x64.Build.0 = Release|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|Win32.ActiveCfg = Release DLL|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64.ActiveCfg = Release DLL|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64.Build.0 = Release DLL|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64 Setup.ActiveCfg = Release DLL|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64 Setup.Build.0 = Release DLL|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x86 Setup.ActiveCfg = Release DLL|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|Win32.Build.0 = Debug|Win32
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x64.ActiveCfg = Debug|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x64.Build.0 = Debug|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|Win32.ActiveCfg = Release|Win32
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|Win32.Build.0 = Release|Win32
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|x64.ActiveCfg = Release|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|x64.Build.0 = Release|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|Win32.ActiveCfg = Release DLL|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64.ActiveCfg = Release DLL|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64.Build.0 = Release DLL|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64 Setup.ActiveCfg = Release DLL|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64 Setup.Build.0 = Release DLL|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x86 Setup.ActiveCfg = Release DLL|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|Win32.Build.0 = Debug|Win32
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x64.ActiveCfg = Debug|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x64.Build.0 = Debug|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|Win32.ActiveCfg = Release|Win32
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|Win32.Build.0 = Release|Win32
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|x64.ActiveCfg = Release|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|x64.Build.0 = Release|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|Win32.ActiveCfg = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x64.ActiveCfg = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x64.Build.0 = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x64 Setup.ActiveCfg = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x64 Setup.Build.0 = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x86 Setup.ActiveCfg = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|Win32.Build.0 = Debug|Win32
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|x64.ActiveCfg = Debug|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|x64.Build.0 = Debug|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|Win32.ActiveCfg = Release|Win32
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|Win32.Build.0 = Release|Win32
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|x64.ActiveCfg = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|x64.Build.0 = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|Win32.ActiveCfg = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64.ActiveCfg = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64.Build.0 = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64 Setup.ActiveCfg = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64 Setup.Build.0 = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x86 Setup.ActiveCfg = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|Win32.Build.0 = Debug|Win32
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x64.ActiveCfg = Debug|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x64.Build.0 = Debug|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|Win32.ActiveCfg = Release|Win32
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|Win32.Build.0 = Release|Win32
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|x64.ActiveCfg = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|x64.Build.0 = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|Win32.ActiveCfg = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64.ActiveCfg = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64.Build.0 = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64 Setup.ActiveCfg = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64 Setup.Build.0 = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x86 Setup.ActiveCfg = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|Win32.Build.0 = Debug|Win32
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x64.ActiveCfg = Debug|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x64.Build.0 = Debug|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|Win32.ActiveCfg = Release|Win32
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|Win32.Build.0 = Release|Win32
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|x64.ActiveCfg = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|x64.Build.0 = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|Win32.ActiveCfg = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64.ActiveCfg = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64.Build.0 = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64 Setup.ActiveCfg = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64 Setup.Build.0 = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x86 Setup.ActiveCfg = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|Win32.Build.0 = Debug|Win32
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x64.ActiveCfg = Debug|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x64.Build.0 = Debug|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|Win32.ActiveCfg = Release|Win32
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|Win32.Build.0 = Release|Win32
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|x64.ActiveCfg = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|x64.Build.0 = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|Win32.ActiveCfg = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64.ActiveCfg = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64.Build.0 = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64 Setup.ActiveCfg = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64 Setup.Build.0 = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x86 Setup.ActiveCfg = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|Win32.Build.0 = Debug|Win32
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x64.ActiveCfg = Debug|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x64.Build.0 = Debug|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|Win32.ActiveCfg = Release|Win32
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|Win32.Build.0 = Release|Win32
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|x64.ActiveCfg = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|x64.Build.0 = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|Win32.ActiveCfg = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64.ActiveCfg = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64.Build.0 = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64 Setup.ActiveCfg = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64 Setup.Build.0 = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x86 Setup.ActiveCfg = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|Win32.Build.0 = Debug|Win32
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x64.ActiveCfg = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x64.Build.0 = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|Win32.ActiveCfg = Release|Win32
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|Win32.Build.0 = Release|Win32
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|x64.ActiveCfg = Release|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|x64.Build.0 = Release|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|Win32.ActiveCfg = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64.ActiveCfg = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64.Build.0 = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64 Setup.ActiveCfg = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64 Setup.Build.0 = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x86 Setup.ActiveCfg = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|Win32.Build.0 = Debug|Win32
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x64.ActiveCfg = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x64.Build.0 = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|Win32.ActiveCfg = Release|Win32
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|Win32.Build.0 = Release|Win32
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|x64.ActiveCfg = Release|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|x64.Build.0 = Release|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|Win32.ActiveCfg = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x64.ActiveCfg = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x64.Build.0 = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x64 Setup.ActiveCfg = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x64 Setup.Build.0 = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.All|x86 Setup.ActiveCfg = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|Win32.Build.0 = Debug|Win32
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|x64.ActiveCfg = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|x64.Build.0 = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|Win32.ActiveCfg = Release|Win32
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|Win32.Build.0 = Release|Win32
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|x64.ActiveCfg = Release|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|x64.Build.0 = Release|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|Win32.ActiveCfg = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64.ActiveCfg = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64.Build.0 = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64 Setup.ActiveCfg = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64 Setup.Build.0 = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x86 Setup.ActiveCfg = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|Win32.Build.0 = Debug|Win32
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x64.ActiveCfg = Debug|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x64.Build.0 = Debug|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|Win32.ActiveCfg = Release|Win32
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|Win32.Build.0 = Release|Win32
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|x64.ActiveCfg = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|x64.Build.0 = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|Win32.ActiveCfg = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|Win32.Build.0 = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64.ActiveCfg = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64.Build.0 = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64 Setup.Build.0 = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x86 Setup.Build.0 = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|Win32.Build.0 = Debug|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x64.ActiveCfg = Debug|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x64.Build.0 = Debug|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|Win32.ActiveCfg = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|Win32.Build.0 = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|x64.ActiveCfg = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|x64.Build.0 = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|Win32.ActiveCfg = Release DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64.ActiveCfg = Release DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64.Build.0 = Release DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64 Setup.ActiveCfg = Release DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64 Setup.Build.0 = Release DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x86 Setup.ActiveCfg = Release DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|Win32.ActiveCfg = Debug DLL|Win32
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|Win32.Build.0 = Debug DLL|Win32
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x64.ActiveCfg = Debug DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x64.Build.0 = Debug DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x64 Setup.ActiveCfg = Debug DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x86 Setup.ActiveCfg = Debug DLL|Win32
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|Win32.ActiveCfg = Release DLL|Win32
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|Win32.Build.0 = Release DLL|Win32
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|x64.ActiveCfg = Release DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|x64.Build.0 = Release DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|x64 Setup.ActiveCfg = Release DLL|x64
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release|x86 Setup.ActiveCfg = Release DLL|Win32
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|Win32.ActiveCfg = Release Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64.ActiveCfg = Release Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64.Build.0 = Release Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64 Setup.ActiveCfg = Release Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64 Setup.Build.0 = Release Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x86 Setup.ActiveCfg = Release Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|Win32.ActiveCfg = Debug Passthrough|Win32
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|Win32.Build.0 = Debug Passthrough|Win32
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x64.ActiveCfg = Debug Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x64.Build.0 = Debug Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x64 Setup.ActiveCfg = Debug Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x86 Setup.ActiveCfg = Debug Passthrough|Win32
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|Win32.ActiveCfg = Release Passthrough|Win32
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|Win32.Build.0 = Release Passthrough|Win32
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|x64.ActiveCfg = Release Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|x64.Build.0 = Release Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|x64 Setup.ActiveCfg = Release Passthrough|x64
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release|x86 Setup.ActiveCfg = Release Passthrough|Win32
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|Win32.ActiveCfg = Release|x64
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x64.ActiveCfg = Release|x64
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x64.Build.0 = Release|x64
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x64 Setup.ActiveCfg = Release|x64
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x64 Setup.Build.0 = Release|x64
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x86 Setup.ActiveCfg = Release|x64
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|Win32.Build.0 = Debug|Win32
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x64.ActiveCfg = Debug|x64
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x64.Build.0 = Debug|x64
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|Win32.ActiveCfg = Release|Win32
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|Win32.Build.0 = Release|Win32
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x64.ActiveCfg = Release|x64
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x64.Build.0 = Release|x64
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|Win32.ActiveCfg = Release|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64.ActiveCfg = Release|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64.Build.0 = Release|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64 Setup.ActiveCfg = Release|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64 Setup.Build.0 = Release|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x86 Setup.ActiveCfg = Release|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|Win32.Build.0 = Debug|Win32
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x64.ActiveCfg = Debug|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x64.Build.0 = Debug|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|Win32.ActiveCfg = Release|Win32
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|Win32.Build.0 = Release|Win32
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|x64.ActiveCfg = Release|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|x64.Build.0 = Release|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|Win32.ActiveCfg = Release|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x64.ActiveCfg = Release|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x64.Build.0 = Release|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x64 Setup.ActiveCfg = Release|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x64 Setup.Build.0 = Release|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.All|x86 Setup.ActiveCfg = Release|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|Win32.Build.0 = Debug|Win32
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|x64.ActiveCfg = Debug|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|x64.Build.0 = Debug|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|Win32.ActiveCfg = Release|Win32
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|Win32.Build.0 = Release|Win32
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|x64.ActiveCfg = Release|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|x64.Build.0 = Release|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|Win32.ActiveCfg = Release|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x64.ActiveCfg = Release|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x64.Build.0 = Release|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x64 Setup.ActiveCfg = Release|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x64 Setup.Build.0 = Release|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.All|x86 Setup.ActiveCfg = Release|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|Win32.Build.0 = Debug|Win32
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|x64.ActiveCfg = Debug|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|x64.Build.0 = Debug|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|Win32.ActiveCfg = Release|Win32
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|Win32.Build.0 = Release|Win32
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|x64.ActiveCfg = Release|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|x64.Build.0 = Release|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.All|Win32.ActiveCfg = Release|x64
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.All|x64.ActiveCfg = Release|x64
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.All|x64.Build.0 = Release|x64
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.All|x64 Setup.ActiveCfg = Release|x64
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.All|x64 Setup.Build.0 = Release|x64
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.All|x86 Setup.ActiveCfg = Release|x64
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Debug|x64.ActiveCfg = Debug|x64
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Release|Win32.ActiveCfg = Release|Win32
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Release|x64.ActiveCfg = Release|x64
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|Win32.ActiveCfg = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64.ActiveCfg = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64.Build.0 = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64 Setup.ActiveCfg = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64 Setup.Build.0 = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x86 Setup.ActiveCfg = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|Win32.Build.0 = Debug|Win32
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x64.ActiveCfg = Debug|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x64.Build.0 = Debug|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|Win32.ActiveCfg = Release|Win32
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|Win32.Build.0 = Release|Win32
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|x64.ActiveCfg = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|x64.Build.0 = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|Win32.ActiveCfg = Release|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x64.ActiveCfg = Release|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x64.Build.0 = Release|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x64 Setup.ActiveCfg = Release|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x64 Setup.Build.0 = Release|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.All|x86 Setup.ActiveCfg = Release|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|Win32.Build.0 = Debug|Win32
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|x64.ActiveCfg = Debug|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|x64.Build.0 = Debug|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|Win32.ActiveCfg = Release|Win32
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|Win32.Build.0 = Release|Win32
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|x64.ActiveCfg = Release|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|x64.Build.0 = Release|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|Win32.ActiveCfg = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64.ActiveCfg = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64.Build.0 = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64 Setup.ActiveCfg = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64 Setup.Build.0 = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x86 Setup.ActiveCfg = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|Win32.Build.0 = Debug|Win32
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x64.ActiveCfg = Debug|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x64.Build.0 = Debug|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|Win32.ActiveCfg = Release|Win32
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|Win32.Build.0 = Release|Win32
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|x64.ActiveCfg = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|x64.Build.0 = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|Win32.ActiveCfg = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64.ActiveCfg = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64.Build.0 = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64 Setup.ActiveCfg = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64 Setup.Build.0 = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x86 Setup.ActiveCfg = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|Win32.Build.0 = Debug|Win32
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x64.ActiveCfg = Debug|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x64.Build.0 = Debug|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|Win32.ActiveCfg = Release|Win32
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|Win32.Build.0 = Release|Win32
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x64.ActiveCfg = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x64.Build.0 = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|Win32.ActiveCfg = Release DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64.ActiveCfg = Release DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64.Build.0 = Release DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64 Setup.ActiveCfg = Release DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64 Setup.Build.0 = Release DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x86 Setup.ActiveCfg = Release DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|Win32.ActiveCfg = Debug DirectSound|Win32
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|Win32.Build.0 = Debug DirectSound|Win32
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x64.ActiveCfg = Debug DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x64.Build.0 = Debug DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x64 Setup.ActiveCfg = Debug DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x86 Setup.ActiveCfg = Debug DirectSound|Win32
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|Win32.ActiveCfg = Release DirectSound|Win32
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|Win32.Build.0 = Release DirectSound|Win32
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64.ActiveCfg = Release DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64.Build.0 = Release DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64 Setup.ActiveCfg = Release DirectSound|x64
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x86 Setup.ActiveCfg = Release DirectSound|Win32
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|Win32.ActiveCfg = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64.ActiveCfg = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64.Build.0 = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64 Setup.ActiveCfg = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64 Setup.Build.0 = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x86 Setup.ActiveCfg = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|Win32.Build.0 = Debug|Win32
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x64.ActiveCfg = Debug|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x64.Build.0 = Debug|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|Win32.ActiveCfg = Release|Win32
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|Win32.Build.0 = Release|Win32
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|x64.ActiveCfg = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|x64.Build.0 = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|Win32.ActiveCfg = Release Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64.ActiveCfg = Release Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64.Build.0 = Release Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64 Setup.ActiveCfg = Release Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64 Setup.Build.0 = Release Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x86 Setup.ActiveCfg = Release Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|Win32.ActiveCfg = Debug Passthrough|Win32
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|Win32.Build.0 = Debug Passthrough|Win32
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x64.ActiveCfg = Debug Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x64.Build.0 = Debug Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x64 Setup.ActiveCfg = Debug Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x86 Setup.ActiveCfg = Debug Passthrough|Win32
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|Win32.ActiveCfg = Release Passthrough|Win32
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|Win32.Build.0 = Release Passthrough|Win32
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|x64.ActiveCfg = Release Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|x64.Build.0 = Release Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|x64 Setup.ActiveCfg = Release Passthrough|x64
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release|x86 Setup.ActiveCfg = Release Passthrough|Win32
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|Win32.ActiveCfg = Release|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64.ActiveCfg = Release|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64.Build.0 = Release|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64 Setup.ActiveCfg = Release|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64 Setup.Build.0 = Release|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x86 Setup.ActiveCfg = Release|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|Win32.Build.0 = Debug|Win32
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x64.ActiveCfg = Debug|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x64.Build.0 = Debug|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|Win32.ActiveCfg = Release|Win32
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|Win32.Build.0 = Release|Win32
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|x64.ActiveCfg = Release|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|x64.Build.0 = Release|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|Win32.ActiveCfg = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64.ActiveCfg = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64.Build.0 = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64 Setup.ActiveCfg = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64 Setup.Build.0 = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x86 Setup.ActiveCfg = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|Win32.Build.0 = Debug|Win32
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x64.ActiveCfg = Debug|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x64.Build.0 = Debug|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|Win32.ActiveCfg = Release|Win32
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|Win32.Build.0 = Release|Win32
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|x64.ActiveCfg = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|x64.Build.0 = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|Win32.ActiveCfg = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64.ActiveCfg = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64.Build.0 = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64 Setup.ActiveCfg = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64 Setup.Build.0 = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x86 Setup.ActiveCfg = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|Win32.Build.0 = Debug|Win32
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x64.ActiveCfg = Debug|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x64.Build.0 = Debug|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|Win32.ActiveCfg = Release|Win32
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|Win32.Build.0 = Release|Win32
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|x64.ActiveCfg = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|x64.Build.0 = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.All|Win32.ActiveCfg = Release|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x64.ActiveCfg = Release|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x64.Build.0 = Release|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x64 Setup.ActiveCfg = Release|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x64 Setup.Build.0 = Release|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.All|x86 Setup.ActiveCfg = Release|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|Win32.Build.0 = Debug|Win32
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|x64.ActiveCfg = Debug|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|x64.Build.0 = Debug|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|Win32.ActiveCfg = Release|Win32
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|Win32.Build.0 = Release|Win32
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|x64.ActiveCfg = Release|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|x64.Build.0 = Release|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {028C7278-05D7-4E18-82FE-BE231B844F41}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|Win32.ActiveCfg = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64.ActiveCfg = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64.Build.0 = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64 Setup.ActiveCfg = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64 Setup.Build.0 = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x86 Setup.ActiveCfg = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|Win32.Build.0 = Debug|Win32
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x64.ActiveCfg = Debug|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x64.Build.0 = Debug|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|Win32.ActiveCfg = Release|Win32
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|Win32.Build.0 = Release|Win32
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|x64.ActiveCfg = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|x64.Build.0 = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|Win32.ActiveCfg = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64.ActiveCfg = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64.Build.0 = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64 Setup.ActiveCfg = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64 Setup.Build.0 = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x86 Setup.ActiveCfg = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|Win32.Build.0 = Debug|Win32
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x64.ActiveCfg = Debug|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x64.Build.0 = Debug|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|Win32.ActiveCfg = Release|Win32
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|Win32.Build.0 = Release|Win32
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|x64.ActiveCfg = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|x64.Build.0 = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|Win32.ActiveCfg = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64.ActiveCfg = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64.Build.0 = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64 Setup.ActiveCfg = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64 Setup.Build.0 = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x86 Setup.ActiveCfg = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|Win32.Build.0 = Debug|Win32
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x64.ActiveCfg = Debug|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x64.Build.0 = Debug|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|Win32.ActiveCfg = Release|Win32
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|Win32.Build.0 = Release|Win32
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|x64.ActiveCfg = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|x64.Build.0 = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|Win32.ActiveCfg = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64.ActiveCfg = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64.Build.0 = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64 Setup.ActiveCfg = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64 Setup.Build.0 = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x86 Setup.ActiveCfg = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|Win32.Build.0 = Debug|Win32
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x64.ActiveCfg = Debug|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x64.Build.0 = Debug|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|Win32.ActiveCfg = Release|Win32
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|Win32.Build.0 = Release|Win32
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|x64.ActiveCfg = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|x64.Build.0 = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|Win32.ActiveCfg = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64.ActiveCfg = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64.Build.0 = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64 Setup.ActiveCfg = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64 Setup.Build.0 = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x86 Setup.ActiveCfg = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|Win32.Build.0 = Debug|Win32
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x64.ActiveCfg = Debug|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x64.Build.0 = Debug|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|Win32.ActiveCfg = Release|Win32
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|Win32.Build.0 = Release|Win32
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|x64.ActiveCfg = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|x64.Build.0 = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|Win32.ActiveCfg = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64.ActiveCfg = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64.Build.0 = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64 Setup.ActiveCfg = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64 Setup.Build.0 = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x86 Setup.ActiveCfg = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|Win32.Build.0 = Debug|Win32
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x64.ActiveCfg = Debug|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x64.Build.0 = Debug|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|Win32.ActiveCfg = Release|Win32
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|Win32.Build.0 = Release|Win32
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|x64.ActiveCfg = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|x64.Build.0 = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|Win32.ActiveCfg = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64.ActiveCfg = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64.Build.0 = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64 Setup.ActiveCfg = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64 Setup.Build.0 = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x86 Setup.ActiveCfg = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|Win32.Build.0 = Debug|Win32
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x64.ActiveCfg = Debug|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x64.Build.0 = Debug|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|Win32.ActiveCfg = Release|Win32
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|Win32.Build.0 = Release|Win32
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|x64.ActiveCfg = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|x64.Build.0 = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {F6A33240-8F29-48BD-98F0-826995911799}.All|Win32.ActiveCfg = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.All|x64.ActiveCfg = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.All|x64.Build.0 = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.All|x64 Setup.ActiveCfg = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.All|x64 Setup.Build.0 = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.All|x86 Setup.ActiveCfg = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Debug|Win32.Build.0 = Debug|Win32
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x64.ActiveCfg = Debug|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x64.Build.0 = Debug|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Release|Win32.ActiveCfg = Release|Win32
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Release|Win32.Build.0 = Release|Win32
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Release|x64.ActiveCfg = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Release|x64.Build.0 = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {F6A33240-8F29-48BD-98F0-826995911799}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|Win32.ActiveCfg = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64.ActiveCfg = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64.Build.0 = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64 Setup.ActiveCfg = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64 Setup.Build.0 = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x86 Setup.ActiveCfg = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|Win32.Build.0 = Debug|Win32
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x64.ActiveCfg = Debug|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x64.Build.0 = Debug|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|Win32.ActiveCfg = Release|Win32
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|Win32.Build.0 = Release|Win32
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|x64.ActiveCfg = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|x64.Build.0 = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|Win32.ActiveCfg = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64.ActiveCfg = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64.Build.0 = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64 Setup.ActiveCfg = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64 Setup.Build.0 = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x86 Setup.ActiveCfg = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|Win32.Build.0 = Debug|Win32
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x64.ActiveCfg = Debug|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x64.Build.0 = Debug|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|Win32.ActiveCfg = Release|Win32
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|Win32.Build.0 = Release|Win32
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|x64.ActiveCfg = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|x64.Build.0 = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|Win32.ActiveCfg = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64.ActiveCfg = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64.Build.0 = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64 Setup.ActiveCfg = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64 Setup.Build.0 = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x86 Setup.ActiveCfg = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|Win32.Build.0 = Debug|Win32
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x64.ActiveCfg = Debug|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x64.Build.0 = Debug|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|Win32.ActiveCfg = Release|Win32
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|Win32.Build.0 = Release|Win32
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|x64.ActiveCfg = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|x64.Build.0 = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|Win32.ActiveCfg = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64.ActiveCfg = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64.Build.0 = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64 Setup.ActiveCfg = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64 Setup.Build.0 = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x86 Setup.ActiveCfg = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|Win32.Build.0 = Debug|Win32
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x64.ActiveCfg = Debug|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x64.Build.0 = Debug|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|Win32.ActiveCfg = Release|Win32
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|Win32.Build.0 = Release|Win32
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|x64.ActiveCfg = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|x64.Build.0 = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|Win32.ActiveCfg = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64.ActiveCfg = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64.Build.0 = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64 Setup.ActiveCfg = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64 Setup.Build.0 = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x86 Setup.ActiveCfg = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|Win32.Build.0 = Debug|Win32
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x64.ActiveCfg = Debug|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x64.Build.0 = Debug|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|Win32.ActiveCfg = Release|Win32
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|Win32.Build.0 = Release|Win32
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|x64.ActiveCfg = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|x64.Build.0 = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|Win32.ActiveCfg = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64.ActiveCfg = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64.Build.0 = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64 Setup.ActiveCfg = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64 Setup.Build.0 = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x86 Setup.ActiveCfg = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|Win32.Build.0 = Debug|Win32
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x64.ActiveCfg = Debug|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x64.Build.0 = Debug|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|Win32.ActiveCfg = Release|Win32
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|Win32.Build.0 = Release|Win32
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|x64.ActiveCfg = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|x64.Build.0 = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|Win32.ActiveCfg = Release|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x64.ActiveCfg = Release|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x64.Build.0 = Release|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x64 Setup.ActiveCfg = Release|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x64 Setup.Build.0 = Release|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.All|x86 Setup.ActiveCfg = Release|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|Win32.Build.0 = Debug|Win32
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|x64.ActiveCfg = Debug|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|x64.Build.0 = Debug|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|Win32.ActiveCfg = Release|Win32
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|Win32.Build.0 = Release|Win32
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|x64.ActiveCfg = Release|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|x64.Build.0 = Release|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|Win32.ActiveCfg = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64.ActiveCfg = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64.Build.0 = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64 Setup.ActiveCfg = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64 Setup.Build.0 = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x86 Setup.ActiveCfg = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|Win32.Build.0 = Debug|Win32
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x64.ActiveCfg = Debug|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x64.Build.0 = Debug|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|Win32.ActiveCfg = Release|Win32
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|Win32.Build.0 = Release|Win32
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64.ActiveCfg = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64.Build.0 = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|Win32.ActiveCfg = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|Win32.Build.0 = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64.ActiveCfg = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64.Build.0 = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64 Setup.Build.0 = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x86 Setup.Build.0 = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|Win32.Build.0 = Debug|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x64.ActiveCfg = Debug|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x64.Build.0 = Debug|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|Win32.ActiveCfg = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|Win32.Build.0 = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|x64.ActiveCfg = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|x64.Build.0 = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.All|Win32.ActiveCfg = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.All|Win32.Build.0 = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.All|x64.ActiveCfg = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.All|x64.Build.0 = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.All|x64 Setup.Build.0 = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.All|x86 Setup.Build.0 = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Debug|Win32.Build.0 = Debug|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x64.ActiveCfg = Debug|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x64.Build.0 = Debug|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Release|Win32.ActiveCfg = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Release|Win32.Build.0 = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Release|x64.ActiveCfg = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Release|x64.Build.0 = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {2DEE4895-1134-439C-B688-52203E57D878}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|Win32.ActiveCfg = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|Win32.Build.0 = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64.ActiveCfg = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64.Build.0 = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64 Setup.Build.0 = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x86 Setup.Build.0 = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|Win32.Build.0 = Debug|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x64.ActiveCfg = Debug|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x64.Build.0 = Debug|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|Win32.ActiveCfg = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|Win32.Build.0 = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|x64.ActiveCfg = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|x64.Build.0 = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|Win32.ActiveCfg = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64.ActiveCfg = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64.Build.0 = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64 Setup.ActiveCfg = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64 Setup.Build.0 = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x86 Setup.ActiveCfg = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|Win32.Build.0 = Debug|Win32
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x64.ActiveCfg = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x64.Build.0 = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|Win32.ActiveCfg = Release|Win32
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|Win32.Build.0 = Release|Win32
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|x64.ActiveCfg = Release|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|x64.Build.0 = Release|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {94001A0E-A837-445C-8004-F918F10D0226}.All|Win32.ActiveCfg = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.All|x64.ActiveCfg = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.All|x64.Build.0 = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.All|x64 Setup.ActiveCfg = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.All|x64 Setup.Build.0 = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.All|x86 Setup.ActiveCfg = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Debug|Win32.Build.0 = Debug|Win32
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x64.ActiveCfg = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x64.Build.0 = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Release|Win32.ActiveCfg = Release|Win32
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Release|Win32.Build.0 = Release|Win32
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Release|x64.ActiveCfg = Release|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Release|x64.Build.0 = Release|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {94001A0E-A837-445C-8004-F918F10D0226}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|Win32.ActiveCfg = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x64.ActiveCfg = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x64.Build.0 = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x64 Setup.ActiveCfg = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x64 Setup.Build.0 = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.All|x86 Setup.ActiveCfg = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|Win32.Build.0 = Debug|Win32
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|x64.ActiveCfg = Debug|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|x64.Build.0 = Debug|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|Win32.ActiveCfg = Release|Win32
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|Win32.Build.0 = Release|Win32
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|x64.ActiveCfg = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|x64.Build.0 = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|Win32.ActiveCfg = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|Win32.Build.0 = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64.ActiveCfg = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64.Build.0 = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64 Setup.Build.0 = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x86 Setup.Build.0 = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|Win32.Build.0 = Debug|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x64.ActiveCfg = Debug|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x64.Build.0 = Debug|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|Win32.ActiveCfg = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|Win32.Build.0 = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|x64.ActiveCfg = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|x64.Build.0 = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|Win32.ActiveCfg = Release|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|x64.ActiveCfg = Release|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|x64.ActiveCfg = Debug|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release|Win32.ActiveCfg = Release|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release|x64.ActiveCfg = Release|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|Win32.ActiveCfg = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|Win32.Build.0 = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64.ActiveCfg = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64.Build.0 = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64 Setup.Build.0 = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x86 Setup.Build.0 = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|Win32.Build.0 = Debug|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x64.ActiveCfg = Debug|x64
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x64.Build.0 = Debug|x64
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|Win32.ActiveCfg = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|Win32.Build.0 = Release|Win32
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|x64.ActiveCfg = Release|x64
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|x64.Build.0 = Release|x64
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.All|Win32.ActiveCfg = Release|Win32
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.All|x64.ActiveCfg = Release|Win32
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|x64.ActiveCfg = Debug|x64
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.Release|Win32.ActiveCfg = Release|Win32
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.Release|x64.ActiveCfg = Release|x64
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {7EB71250-F002-4ED8-92CA-CA218114537A}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|Win32.ActiveCfg = Release|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|x64.ActiveCfg = Release|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|x64.ActiveCfg = Debug|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release|Win32.ActiveCfg = Release|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release|x64.ActiveCfg = Release|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.All|Win32.ActiveCfg = Release|Win32
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.All|x64.ActiveCfg = Release|Win32
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|x64.ActiveCfg = Debug|x64
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.Release|Win32.ActiveCfg = Release|Win32
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.Release|x64.ActiveCfg = Release|x64
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {464AAB78-5489-4916-BE51-BF8D61822311}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.All|Win32.ActiveCfg = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64.ActiveCfg = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64.Build.0 = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64 Setup.ActiveCfg = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64 Setup.Build.0 = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.All|x86 Setup.ActiveCfg = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|Win32.Build.0 = Debug|Win32
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x64.ActiveCfg = Debug|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x64.Build.0 = Debug|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Release|Win32.ActiveCfg = Release|Win32
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Release|Win32.Build.0 = Release|Win32
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Release|x64.ActiveCfg = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Release|x64.Build.0 = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {0AD1177E-1FD8-4643-9391-431467A11084}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|Win32.ActiveCfg = Release Static|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64.ActiveCfg = Release Static|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64.Build.0 = Release Static|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64 Setup.ActiveCfg = Release Static|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64 Setup.Build.0 = Release Static|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x86 Setup.ActiveCfg = Release Static|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|Win32.Build.0 = Debug|Win32
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x64.ActiveCfg = Debug|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x64.Build.0 = Debug|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|Win32.ActiveCfg = Release|Win32
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|Win32.Build.0 = Release|Win32
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x64.ActiveCfg = Release|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x64.Build.0 = Release|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64 Setup.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x86 Setup.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|Win32.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x64.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x64.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64 Setup.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x86 Setup.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|Win32.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x64.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x64.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64 Setup.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x86 Setup.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|Win32.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x64.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x64.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64 Setup.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x86 Setup.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|Win32.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x64.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x64.Build.0 = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|Win32.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|Win32.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|x64.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|x64.Build.0 = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|Win32.ActiveCfg = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64.ActiveCfg = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64.Build.0 = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64 Setup.ActiveCfg = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64 Setup.Build.0 = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x86 Setup.ActiveCfg = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|Win32.Build.0 = Debug|Win32
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x64.ActiveCfg = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x64.Build.0 = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|Win32.ActiveCfg = Release|Win32
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|Win32.Build.0 = Release|Win32
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|x64.ActiveCfg = Release|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|x64.Build.0 = Release|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|Win32.ActiveCfg = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64.ActiveCfg = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64.Build.0 = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64 Setup.ActiveCfg = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64 Setup.Build.0 = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x86 Setup.ActiveCfg = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|Win32.Build.0 = Debug|Win32
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x64.ActiveCfg = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x64.Build.0 = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|Win32.ActiveCfg = Release|Win32
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|Win32.Build.0 = Release|Win32
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|x64.ActiveCfg = Release|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|x64.Build.0 = Release|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.All|Win32.ActiveCfg = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64.ActiveCfg = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64.Build.0 = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64 Setup.ActiveCfg = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64 Setup.Build.0 = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x86 Setup.ActiveCfg = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|Win32.Build.0 = Debug|Win32
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x64.ActiveCfg = Debug|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x64.Build.0 = Debug|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|Win32.ActiveCfg = Release|Win32
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|Win32.Build.0 = Release|Win32
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|x64.ActiveCfg = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|x64.Build.0 = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {38FE0559-9910-43A8-9E45-3E5004C27692}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|Win32.ActiveCfg = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64.ActiveCfg = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64.Build.0 = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64 Setup.ActiveCfg = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64 Setup.Build.0 = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x86 Setup.ActiveCfg = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|Win32.Build.0 = Debug|Win32
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x64.ActiveCfg = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x64.Build.0 = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|Win32.ActiveCfg = Release|Win32
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|Win32.Build.0 = Release|Win32
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|x64.ActiveCfg = Release|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|x64.Build.0 = Release|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|Win32.ActiveCfg = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64.ActiveCfg = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64.Build.0 = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64 Setup.ActiveCfg = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64 Setup.Build.0 = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x86 Setup.ActiveCfg = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|Win32.Build.0 = Debug|Win32
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x64.ActiveCfg = Debug|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x64.Build.0 = Debug|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|Win32.ActiveCfg = Release|Win32
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|Win32.Build.0 = Release|Win32
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|x64.ActiveCfg = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|x64.Build.0 = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|Win32.ActiveCfg = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64.ActiveCfg = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64.Build.0 = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64 Setup.ActiveCfg = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64 Setup.Build.0 = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x86 Setup.ActiveCfg = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|Win32.Build.0 = Debug|Win32
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x64.ActiveCfg = Debug|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x64.Build.0 = Debug|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|Win32.ActiveCfg = Release|Win32
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|Win32.Build.0 = Release|Win32
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|x64.ActiveCfg = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|x64.Build.0 = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|Win32.ActiveCfg = Release_Mono|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64.ActiveCfg = Release_Mono|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64.Build.0 = Release_Mono|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64 Setup.ActiveCfg = Release_Mono|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64 Setup.Build.0 = Release_Mono|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x86 Setup.ActiveCfg = Release_Mono|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|Win32.ActiveCfg = Debug_CLR|Win32
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|Win32.Build.0 = Debug_CLR|Win32
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x64.ActiveCfg = Debug_CLR|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x64.Build.0 = Debug_CLR|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x64 Setup.ActiveCfg = Debug_CLR|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x86 Setup.ActiveCfg = Debug_CLR|Win32
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|Win32.ActiveCfg = Release_CLR|Win32
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|Win32.Build.0 = Release_CLR|Win32
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|x64.ActiveCfg = Release_CLR|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|x64.Build.0 = Release_CLR|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|x64 Setup.ActiveCfg = Release_CLR|x64
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release|x86 Setup.ActiveCfg = Release_CLR|Win32
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.All|Win32.ActiveCfg = Release|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.All|x64.ActiveCfg = Release|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.All|x64 Setup.ActiveCfg = Release|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.All|x86 Setup.ActiveCfg = Release|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|Win32.ActiveCfg = Debug|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|Win32.Build.0 = Debug|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|x64.ActiveCfg = Debug|x64
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|x64.Build.0 = Debug|x64
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Debug|x86 Setup.ActiveCfg = Debug|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|Win32.ActiveCfg = Release|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|Win32.Build.0 = Release|Any CPU
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|x64.ActiveCfg = Release|x64
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|x64.Build.0 = Release|x64
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0}.Release|x86 Setup.ActiveCfg = Release|Any CPU
-+ {E796E337-DE78-4303-8614-9A590862EE95}.All|Win32.ActiveCfg = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.All|Win32.Build.0 = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.All|x64.ActiveCfg = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.All|x64.Build.0 = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.All|x64 Setup.Build.0 = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.All|x86 Setup.Build.0 = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Debug|Win32.Build.0 = Debug|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x64.ActiveCfg = Debug|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x64.Build.0 = Debug|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Release|Win32.ActiveCfg = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Release|Win32.Build.0 = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Release|x64.ActiveCfg = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Release|x64.Build.0 = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {E796E337-DE78-4303-8614-9A590862EE95}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.All|Win32.ActiveCfg = Release|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64.ActiveCfg = Release|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64.Build.0 = Release|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64 Setup.ActiveCfg = Release|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64 Setup.Build.0 = Release|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.All|x86 Setup.ActiveCfg = Release|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|Win32.Build.0 = Debug|Win32
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x64.ActiveCfg = Debug|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x64.Build.0 = Debug|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Release|Win32.ActiveCfg = Release|Win32
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Release|Win32.Build.0 = Release|Win32
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Release|x64.ActiveCfg = Release|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Release|x64.Build.0 = Release|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {419C8F80-D858-4B48-A25C-AF4007608137}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|Win32.ActiveCfg = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64.ActiveCfg = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64.Build.0 = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64 Setup.ActiveCfg = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64 Setup.Build.0 = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x86 Setup.ActiveCfg = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|Win32.Build.0 = Debug|Win32
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x64.ActiveCfg = Debug|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x64.Build.0 = Debug|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|Win32.ActiveCfg = Release|Win32
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|Win32.Build.0 = Release|Win32
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|x64.ActiveCfg = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|x64.Build.0 = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|Win32.ActiveCfg = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64.ActiveCfg = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64.Build.0 = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64 Setup.ActiveCfg = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64 Setup.Build.0 = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x86 Setup.ActiveCfg = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|Win32.Build.0 = Debug|Win32
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x64.ActiveCfg = Debug|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x64.Build.0 = Debug|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|Win32.ActiveCfg = Release|Win32
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|Win32.Build.0 = Release|Win32
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|x64.ActiveCfg = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|x64.Build.0 = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|Win32.ActiveCfg = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64.ActiveCfg = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64.Build.0 = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64 Setup.ActiveCfg = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64 Setup.Build.0 = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x86 Setup.ActiveCfg = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|Win32.Build.0 = Debug|Win32
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x64.ActiveCfg = Debug|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x64.Build.0 = Debug|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|Win32.ActiveCfg = Release|Win32
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|Win32.Build.0 = Release|Win32
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|x64.ActiveCfg = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|x64.Build.0 = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.All|Win32.ActiveCfg = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64.ActiveCfg = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64.Build.0 = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64 Setup.ActiveCfg = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64 Setup.Build.0 = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x86 Setup.ActiveCfg = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|Win32.Build.0 = Debug|Win32
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x64.ActiveCfg = Debug|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x64.Build.0 = Debug|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|Win32.ActiveCfg = Release|Win32
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|Win32.Build.0 = Release|Win32
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|x64.ActiveCfg = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|x64.Build.0 = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {0B6C905B-142E-4999-B39D-92FF7951E921}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|Win32.ActiveCfg = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64.ActiveCfg = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64.Build.0 = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64 Setup.ActiveCfg = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64 Setup.Build.0 = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x86 Setup.ActiveCfg = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|Win32.Build.0 = Debug|Win32
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x64.ActiveCfg = Debug|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x64.Build.0 = Debug|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|Win32.ActiveCfg = Release|Win32
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|Win32.Build.0 = Release|Win32
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|x64.ActiveCfg = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|x64.Build.0 = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|Win32.ActiveCfg = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64.ActiveCfg = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64.Build.0 = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64 Setup.ActiveCfg = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64 Setup.Build.0 = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x86 Setup.ActiveCfg = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|Win32.Build.0 = Debug|Win32
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x64.ActiveCfg = Debug|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x64.Build.0 = Debug|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|Win32.ActiveCfg = Release|Win32
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|Win32.Build.0 = Release|Win32
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|x64.ActiveCfg = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|x64.Build.0 = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|Win32.ActiveCfg = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64.ActiveCfg = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64.Build.0 = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64 Setup.ActiveCfg = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64 Setup.Build.0 = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x86 Setup.ActiveCfg = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|Win32.Build.0 = Debug|Win32
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x64.ActiveCfg = Debug|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x64.Build.0 = Debug|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|Win32.ActiveCfg = Release|Win32
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|Win32.Build.0 = Release|Win32
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|x64.ActiveCfg = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|x64.Build.0 = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|Win32.ActiveCfg = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64.ActiveCfg = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64.Build.0 = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64 Setup.ActiveCfg = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64 Setup.Build.0 = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x86 Setup.ActiveCfg = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|Win32.Build.0 = Debug|Win32
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x64.ActiveCfg = Debug|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x64.Build.0 = Debug|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|Win32.ActiveCfg = Release|Win32
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|Win32.Build.0 = Release|Win32
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x64.ActiveCfg = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x64.Build.0 = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|Win32.ActiveCfg = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x64.ActiveCfg = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x64.Build.0 = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x64 Setup.ActiveCfg = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x64 Setup.Build.0 = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x86 Setup.ActiveCfg = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.Build.0 = Debug|Win32
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x64.ActiveCfg = Debug|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x64.Build.0 = Debug|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|Win32.ActiveCfg = Release|Win32
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|Win32.Build.0 = Release|Win32
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x64.ActiveCfg = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x64.Build.0 = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|Win32.ActiveCfg = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64.ActiveCfg = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64.Build.0 = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64 Setup.ActiveCfg = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64 Setup.Build.0 = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x86 Setup.ActiveCfg = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|Win32.Build.0 = Debug|Win32
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64.ActiveCfg = Debug|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64.Build.0 = Debug|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|Win32.ActiveCfg = Release|Win32
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|Win32.Build.0 = Release|Win32
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x64.ActiveCfg = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x64.Build.0 = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|Win32.ActiveCfg = Release_WM5_PPC_ARM|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x64.ActiveCfg = Release_WM5_PPC_ARM|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x64.Build.0 = Release_WM5_PPC_ARM|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x64 Setup.ActiveCfg = Release_WM5_PPC_ARM|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x64 Setup.Build.0 = Release_WM5_PPC_ARM|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x86 Setup.ActiveCfg = Release_WM5_PPC_ARM|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|Win32.Build.0 = Debug|Win32
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|x64.ActiveCfg = Debug|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|x64.Build.0 = Debug|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|Win32.ActiveCfg = Release|Win32
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|Win32.Build.0 = Release|Win32
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|x64.ActiveCfg = Release|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|x64.Build.0 = Release|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|Win32.ActiveCfg = Release_Static_SSE|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x64.ActiveCfg = Release_Static_SSE|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x64.Build.0 = Release_Static_SSE|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x64 Setup.ActiveCfg = Release_Static_SSE|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x64 Setup.Build.0 = Release_Static_SSE|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x86 Setup.ActiveCfg = Release_Static_SSE|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|Win32.Build.0 = Debug|Win32
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|x64.ActiveCfg = Debug|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|x64.Build.0 = Debug|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|Win32.ActiveCfg = Release|Win32
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|Win32.Build.0 = Release|Win32
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x64.ActiveCfg = Release|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x64.Build.0 = Release|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|Win32.ActiveCfg = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64.ActiveCfg = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64.Build.0 = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64 Setup.ActiveCfg = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64 Setup.Build.0 = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x86 Setup.ActiveCfg = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|Win32.Build.0 = Debug|Win32
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64.ActiveCfg = Debug|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64.Build.0 = Debug|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|Win32.ActiveCfg = Release|Win32
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|Win32.Build.0 = Release|Win32
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x64.ActiveCfg = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x64.Build.0 = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.All|Win32.ActiveCfg = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64.ActiveCfg = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64.Build.0 = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64 Setup.ActiveCfg = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64 Setup.Build.0 = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.All|x86 Setup.ActiveCfg = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|Win32.Build.0 = Debug|Win32
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x64.ActiveCfg = Debug|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x64.Build.0 = Debug|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Release|Win32.ActiveCfg = Release|Win32
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Release|Win32.Build.0 = Release|Win32
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Release|x64.ActiveCfg = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Release|x64.Build.0 = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {D0B36172-CD76-454A-9B89-990025266C2A}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|Win32.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|Win32.Build.0 = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|x64.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|x86 Setup.Build.0 = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|x64.ActiveCfg = Debug|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release|Win32.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release|x64.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|Win32.ActiveCfg = Release|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|x64.ActiveCfg = Release|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|Win32.Build.0 = Debug|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x64.ActiveCfg = Debug|x64
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x64.Build.0 = Debug|x64
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|Win32.ActiveCfg = Release|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|Win32.Build.0 = Release|Win32
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x64.ActiveCfg = Release|x64
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x64.Build.0 = Release|x64
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.All|Win32.ActiveCfg = Release|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.All|x64.ActiveCfg = Release|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.Debug|Win32.Build.0 = Debug|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.Debug|x64.ActiveCfg = Debug|x64
-+ {48414740-C693-4968-9846-EE058020C64F}.Debug|x64.Build.0 = Debug|x64
-+ {48414740-C693-4968-9846-EE058020C64F}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {48414740-C693-4968-9846-EE058020C64F}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.Release|Win32.ActiveCfg = Release|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.Release|Win32.Build.0 = Release|Win32
-+ {48414740-C693-4968-9846-EE058020C64F}.Release|x64.ActiveCfg = Release|x64
-+ {48414740-C693-4968-9846-EE058020C64F}.Release|x64.Build.0 = Release|x64
-+ {48414740-C693-4968-9846-EE058020C64F}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {48414740-C693-4968-9846-EE058020C64F}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|Win32.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|Win32.Build.0 = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|x64.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|x64 Setup.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|x86 Setup.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|x86 Setup.Build.0 = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|Win32.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|Win32.Build.0 = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x64.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x64.Build.0 = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x64 Setup.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x86 Setup.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|Win32.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|Win32.Build.0 = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|x64.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|x64.Build.0 = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|x64 Setup.ActiveCfg = All|Win32
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release|x86 Setup.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|Win32.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|Win32.Build.0 = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|x64.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|x64 Setup.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|x86 Setup.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|x86 Setup.Build.0 = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|Win32.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|Win32.Build.0 = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x64.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x64.Build.0 = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x64 Setup.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x86 Setup.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|Win32.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|Win32.Build.0 = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|x64.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|x64.Build.0 = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|x64 Setup.ActiveCfg = All|Win32
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release|x86 Setup.ActiveCfg = All|Win32
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|Win32.ActiveCfg = Release|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64.ActiveCfg = Release|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64.Build.0 = Release|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64 Setup.ActiveCfg = Release|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64 Setup.Build.0 = Release|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x86 Setup.ActiveCfg = Release|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|x64.ActiveCfg = Debug|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release|Win32.ActiveCfg = Release|Win32
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release|x64.ActiveCfg = Release|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|Win32.ActiveCfg = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|Win32.Build.0 = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|x64.ActiveCfg = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|x86 Setup.Build.0 = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|Win32.Build.0 = Debug|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x64.ActiveCfg = Debug|x64
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x64.Build.0 = Debug|x64
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|Win32.ActiveCfg = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|Win32.Build.0 = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x64.ActiveCfg = Release|x64
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x64.Build.0 = Release|x64
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.All|Win32.ActiveCfg = Release|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.All|x64.ActiveCfg = Release|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|x64.ActiveCfg = Debug|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.Release|Win32.ActiveCfg = Release|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.Release|x64.ActiveCfg = Release|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {1F0A8A77-E661-418F-BB92-82172AE43803}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|Win32.ActiveCfg = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|Win32.Build.0 = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64.ActiveCfg = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64.Build.0 = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64 Setup.Build.0 = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x86 Setup.Build.0 = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|Win32.Build.0 = Debug|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x64.ActiveCfg = Debug|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x64.Build.0 = Debug|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|Win32.ActiveCfg = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|Win32.Build.0 = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|x64.ActiveCfg = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|x64.Build.0 = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|Win32.ActiveCfg = Release|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|x64.ActiveCfg = Release|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|x64.ActiveCfg = Debug|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release|Win32.ActiveCfg = Release|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release|x64.ActiveCfg = Release|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|Win32.ActiveCfg = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|Win32.Build.0 = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64.ActiveCfg = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64.Build.0 = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64 Setup.Build.0 = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x86 Setup.Build.0 = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|Win32.Build.0 = Debug|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x64.ActiveCfg = Debug|x64
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x64.Build.0 = Debug|x64
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|Win32.ActiveCfg = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|Win32.Build.0 = Release|Win32
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|x64.ActiveCfg = Release|x64
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|x64.Build.0 = Release|x64
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|Win32.ActiveCfg = Release|Win32
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|x64.ActiveCfg = Release|Win32
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|x64.ActiveCfg = Debug|x64
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release|Win32.ActiveCfg = Release|Win32
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release|x64.ActiveCfg = Release|x64
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|Win32.ActiveCfg = Release|Win32
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|x64.ActiveCfg = Release|Win32
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|x64.ActiveCfg = Debug|x64
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release|Win32.ActiveCfg = Release|Win32
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release|x64.ActiveCfg = Release|x64
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|Win32.ActiveCfg = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64.ActiveCfg = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64.Build.0 = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64 Setup.ActiveCfg = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64 Setup.Build.0 = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x86 Setup.ActiveCfg = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|Win32.Build.0 = Debug|Win32
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x64.ActiveCfg = Debug|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x64.Build.0 = Debug|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|Win32.ActiveCfg = Release|Win32
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|Win32.Build.0 = Release|Win32
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|x64.ActiveCfg = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|x64.Build.0 = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|Win32.ActiveCfg = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|Win32.Build.0 = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64.ActiveCfg = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64.Build.0 = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64 Setup.ActiveCfg = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64 Setup.Build.0 = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x86 Setup.ActiveCfg = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x86 Setup.Build.0 = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|Win32.Build.0 = Debug|Win32
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x64.ActiveCfg = Debug|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x64.Build.0 = Debug|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|Win32.ActiveCfg = Release|Win32
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|Win32.Build.0 = Release|Win32
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|x64.ActiveCfg = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|x64.Build.0 = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|Win32.ActiveCfg = Release|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|x64.ActiveCfg = Release|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|x64 Setup.ActiveCfg = Release|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|x86 Setup.ActiveCfg = Release|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|Win32.Build.0 = Debug|Win32
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x64.ActiveCfg = Debug|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x64.Build.0 = Debug|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|Win32.ActiveCfg = Release|Win32
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|Win32.Build.0 = Release|Win32
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|x64.ActiveCfg = Release|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|x64.Build.0 = Release|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|Win32.ActiveCfg = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|Win32.Build.0 = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|x64.ActiveCfg = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|x86 Setup.Build.0 = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|Win32.Build.0 = Debug|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x64.ActiveCfg = Debug|x64
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x64.Build.0 = Debug|x64
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|Win32.ActiveCfg = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|Win32.Build.0 = Release|Win32
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|x64.ActiveCfg = Release|x64
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|x64.Build.0 = Release|x64
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|Win32.ActiveCfg = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64.ActiveCfg = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64.Build.0 = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64 Setup.ActiveCfg = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64 Setup.Build.0 = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x86 Setup.ActiveCfg = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|Win32.Build.0 = Debug|Win32
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x64.ActiveCfg = Debug|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x64.Build.0 = Debug|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|Win32.ActiveCfg = Release|Win32
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|Win32.Build.0 = Release|Win32
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|x64.ActiveCfg = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|x64.Build.0 = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|Win32.ActiveCfg = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|Win32.Build.0 = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|x64.ActiveCfg = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|x86 Setup.Build.0 = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|Win32.Build.0 = Debug|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x64.ActiveCfg = Debug|x64
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x64.Build.0 = Debug|x64
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|Win32.ActiveCfg = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|Win32.Build.0 = Release|Win32
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|x64.ActiveCfg = Release|x64
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|x64.Build.0 = Release|x64
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|Win32.ActiveCfg = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|Win32.Build.0 = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|x64.ActiveCfg = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|x86 Setup.Build.0 = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|Win32.Build.0 = Debug|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x64.ActiveCfg = Debug|x64
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x64.Build.0 = Debug|x64
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|Win32.ActiveCfg = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|Win32.Build.0 = Release|Win32
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|x64.ActiveCfg = Release|x64
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|x64.Build.0 = Release|x64
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|Win32.ActiveCfg = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|Win32.Build.0 = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|x64.ActiveCfg = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|x86 Setup.Build.0 = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|Win32.Build.0 = Debug|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x64.ActiveCfg = Debug|x64
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x64.Build.0 = Debug|x64
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|Win32.ActiveCfg = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|Win32.Build.0 = Release|Win32
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|x64.ActiveCfg = Release|x64
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|x64.Build.0 = Release|x64
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|Win32.ActiveCfg = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|Win32.Build.0 = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|x64.ActiveCfg = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|x86 Setup.Build.0 = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|Win32.Build.0 = Debug|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x64.ActiveCfg = Debug|x64
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x64.Build.0 = Debug|x64
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|Win32.ActiveCfg = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|Win32.Build.0 = Release|Win32
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|x64.ActiveCfg = Release|x64
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|x64.Build.0 = Release|x64
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|Win32.ActiveCfg = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|Win32.Build.0 = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|x64.ActiveCfg = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|x86 Setup.Build.0 = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|Win32.Build.0 = Debug|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x64.ActiveCfg = Debug|x64
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x64.Build.0 = Debug|x64
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|Win32.ActiveCfg = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|Win32.Build.0 = Release|Win32
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|x64.ActiveCfg = Release|x64
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|x64.Build.0 = Release|x64
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|Win32.ActiveCfg = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|Win32.Build.0 = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|x64.ActiveCfg = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|x86 Setup.Build.0 = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|Win32.Build.0 = Debug|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x64.ActiveCfg = Debug|x64
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x64.Build.0 = Debug|x64
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|Win32.ActiveCfg = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|Win32.Build.0 = Release|Win32
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|x64.ActiveCfg = Release|x64
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|x64.Build.0 = Release|x64
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.All|Win32.ActiveCfg = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.All|Win32.Build.0 = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.All|x64.ActiveCfg = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.All|x86 Setup.Build.0 = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|Win32.Build.0 = Debug|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x64.ActiveCfg = Debug|x64
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x64.Build.0 = Debug|x64
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|Win32.ActiveCfg = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|Win32.Build.0 = Release|Win32
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|x64.ActiveCfg = Release|x64
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|x64.Build.0 = Release|x64
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {504B3154-7A4F-459D-9877-B951021C3F1F}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|Win32.ActiveCfg = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|Win32.Build.0 = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|x64.ActiveCfg = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|x86 Setup.Build.0 = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|Win32.Build.0 = Debug|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x64.ActiveCfg = Debug|x64
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x64.Build.0 = Debug|x64
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|Win32.ActiveCfg = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|Win32.Build.0 = Release|Win32
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|x64.ActiveCfg = Release|x64
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|x64.Build.0 = Release|x64
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|Win32.ActiveCfg = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|Win32.Build.0 = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|x64.ActiveCfg = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|x86 Setup.Build.0 = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|Win32.Build.0 = Debug|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x64.ActiveCfg = Debug|x64
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x64.Build.0 = Debug|x64
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|Win32.ActiveCfg = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|Win32.Build.0 = Release|Win32
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|x64.ActiveCfg = Release|x64
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|x64.Build.0 = Release|x64
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|Win32.ActiveCfg = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x64.ActiveCfg = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x64.Build.0 = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x64 Setup.ActiveCfg = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x64 Setup.Build.0 = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.All|x86 Setup.ActiveCfg = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|Win32.Build.0 = Debug|Win32
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|x64.ActiveCfg = Debug|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|x64.Build.0 = Debug|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|Win32.ActiveCfg = Release|Win32
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|Win32.Build.0 = Release|Win32
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|x64.ActiveCfg = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|x64.Build.0 = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|Win32.ActiveCfg = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|Win32.Build.0 = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|x64.ActiveCfg = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|x86 Setup.Build.0 = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|Win32.Build.0 = Debug|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x64.ActiveCfg = Debug|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x64.Build.0 = Debug|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|Win32.ActiveCfg = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|Win32.Build.0 = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|x64.ActiveCfg = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|x64.Build.0 = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|Win32.ActiveCfg = Release|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64.ActiveCfg = Release|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64.Build.0 = Release|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64 Setup.ActiveCfg = Release|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64 Setup.Build.0 = Release|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x86 Setup.ActiveCfg = Release|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|Win32.Build.0 = Debug|Win32
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x64.ActiveCfg = Debug|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x64.Build.0 = Debug|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|Win32.ActiveCfg = Release|Win32
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|Win32.Build.0 = Release|Win32
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|x64.ActiveCfg = Release|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|x64.Build.0 = Release|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|Win32.ActiveCfg = Release Passthrough|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64.ActiveCfg = Release Passthrough|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64.Build.0 = Release Passthrough|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64 Setup.ActiveCfg = Release Passthrough|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64 Setup.Build.0 = Release Passthrough|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x86 Setup.ActiveCfg = Release Passthrough|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|Win32.Build.0 = Debug|Win32
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x64.ActiveCfg = Debug|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x64.Build.0 = Debug|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|Win32.ActiveCfg = Release|Win32
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|Win32.Build.0 = Release|Win32
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|x64.ActiveCfg = Release|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|x64.Build.0 = Release|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|Win32.ActiveCfg = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|Win32.Build.0 = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|x64.ActiveCfg = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|x86 Setup.Build.0 = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|x64.ActiveCfg = Debug|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release|Win32.ActiveCfg = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release|x64.ActiveCfg = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|Win32.ActiveCfg = Release|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64.ActiveCfg = Release|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64.Build.0 = Release|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64 Setup.ActiveCfg = Release|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64 Setup.Build.0 = Release|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x86 Setup.ActiveCfg = Release|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|Win32.Build.0 = Debug|Win32
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x64.ActiveCfg = Debug|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x64.Build.0 = Debug|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|Win32.ActiveCfg = Release|Win32
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|Win32.Build.0 = Release|Win32
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|x64.ActiveCfg = Release|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|x64.Build.0 = Release|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|Win32.ActiveCfg = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|Win32.Build.0 = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|x64.ActiveCfg = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|x86 Setup.Build.0 = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|Win32.Build.0 = Debug|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x64.ActiveCfg = Debug|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x64.Build.0 = Debug|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|Win32.ActiveCfg = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|Win32.Build.0 = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|x64.ActiveCfg = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|x64.Build.0 = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|Win32.ActiveCfg = Release|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64.ActiveCfg = Release|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64.Build.0 = Release|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64 Setup.ActiveCfg = Release|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64 Setup.Build.0 = Release|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x86 Setup.ActiveCfg = Release|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|Win32.Build.0 = Debug|Win32
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x64.ActiveCfg = Debug|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x64.Build.0 = Debug|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|Win32.ActiveCfg = Release|Win32
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|Win32.Build.0 = Release|Win32
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|x64.ActiveCfg = Release|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|x64.Build.0 = Release|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|Win32.ActiveCfg = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64.ActiveCfg = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64.Build.0 = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64 Setup.ActiveCfg = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64 Setup.Build.0 = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x86 Setup.ActiveCfg = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|Win32.Build.0 = Debug|Win32
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x64.ActiveCfg = Debug|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x64.Build.0 = Debug|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|Win32.ActiveCfg = Release|Win32
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|Win32.Build.0 = Release|Win32
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|x64.ActiveCfg = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|x64.Build.0 = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|Win32.ActiveCfg = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|Win32.Build.0 = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|x64.ActiveCfg = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|x86 Setup.Build.0 = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|Win32.Build.0 = Debug|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x64.ActiveCfg = Debug|x64
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x64.Build.0 = Debug|x64
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|Win32.ActiveCfg = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|Win32.Build.0 = Release|Win32
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|x64.ActiveCfg = Release|x64
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|x64.Build.0 = Release|x64
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|Win32.ActiveCfg = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|Win32.Build.0 = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|x64.ActiveCfg = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|x86 Setup.Build.0 = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|Win32.Build.0 = Debug|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x64.ActiveCfg = Debug|x64
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x64.Build.0 = Debug|x64
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|Win32.ActiveCfg = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|Win32.Build.0 = Release|Win32
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|x64.ActiveCfg = Release|x64
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|x64.Build.0 = Release|x64
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|Win32.ActiveCfg = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64.ActiveCfg = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64.Build.0 = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64 Setup.ActiveCfg = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64 Setup.Build.0 = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x86 Setup.ActiveCfg = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|Win32.Build.0 = Debug|Win32
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x64.ActiveCfg = Debug|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x64.Build.0 = Debug|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|Win32.ActiveCfg = Release|Win32
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|Win32.Build.0 = Release|Win32
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|x64.ActiveCfg = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|x64.Build.0 = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|Win32.ActiveCfg = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64.ActiveCfg = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64.Build.0 = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64 Setup.ActiveCfg = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64 Setup.Build.0 = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x86 Setup.ActiveCfg = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|Win32.Build.0 = Debug|Win32
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x64.ActiveCfg = Debug|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x64.Build.0 = Debug|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|Win32.ActiveCfg = Release|Win32
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|Win32.Build.0 = Release|Win32
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|x64.ActiveCfg = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|x64.Build.0 = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|Win32.ActiveCfg = Release|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|x64.ActiveCfg = Release|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|x64.Build.0 = Release|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|x64 Setup.ActiveCfg = Release|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|x64 Setup.Build.0 = Release|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|x86 Setup.ActiveCfg = Release|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|Win32.Build.0 = Debug|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|x64.ActiveCfg = Debug|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|x64.Build.0 = Debug|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|Win32.ActiveCfg = Release|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|Win32.Build.0 = Release|Win32
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|x64.ActiveCfg = Release|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|x64.Build.0 = Release|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|Win32.ActiveCfg = Release|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|x64.ActiveCfg = Release|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|x64.Build.0 = Release|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|x64 Setup.ActiveCfg = Release|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|x64 Setup.Build.0 = Release|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|x86 Setup.ActiveCfg = Release|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|Win32.Build.0 = Debug|Win32
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|x64.ActiveCfg = Debug|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|x64.Build.0 = Debug|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|Win32.ActiveCfg = Release|Win32
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|Win32.Build.0 = Release|Win32
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|x64.ActiveCfg = Release|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|x64.Build.0 = Release|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|Win32.ActiveCfg = Release|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|x64.ActiveCfg = Release|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|x64.Build.0 = Release|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|x64 Setup.ActiveCfg = Release|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|x64 Setup.Build.0 = Release|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|x86 Setup.ActiveCfg = Release|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|Win32.Build.0 = Debug|Win32
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|x64.ActiveCfg = Debug|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|x64.Build.0 = Debug|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|Win32.ActiveCfg = Release|Win32
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|Win32.Build.0 = Release|Win32
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|x64.ActiveCfg = Release|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|x64.Build.0 = Release|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|Win32.ActiveCfg = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|Win32.Build.0 = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|x64.ActiveCfg = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|x86 Setup.Build.0 = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|Win32.Build.0 = Debug|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|x64.ActiveCfg = Debug|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|x64.Build.0 = Debug|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|Win32.ActiveCfg = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|Win32.Build.0 = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|x64.ActiveCfg = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|x64.Build.0 = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|Win32.ActiveCfg = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64.ActiveCfg = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64.Build.0 = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64 Setup.ActiveCfg = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64 Setup.Build.0 = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x86 Setup.ActiveCfg = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|Win32.Build.0 = Debug|Win32
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x64.ActiveCfg = Debug|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x64.Build.0 = Debug|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|Win32.ActiveCfg = Release|Win32
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|Win32.Build.0 = Release|Win32
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|x64.ActiveCfg = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|x64.Build.0 = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|Win32.ActiveCfg = Release|x64
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|x64.ActiveCfg = Release|x64
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|x64.Build.0 = Release|x64
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|x64 Setup.ActiveCfg = Release|x64
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|x64 Setup.Build.0 = Release|x64
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|x86 Setup.ActiveCfg = Release|x64
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|Win32.Build.0 = Debug|Win32
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|x64.ActiveCfg = Debug|x64
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|x64.Build.0 = Debug|x64
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|Win32.ActiveCfg = Release|Win32
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|Win32.Build.0 = Release|Win32
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|x64.ActiveCfg = Release|x64
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|x64.Build.0 = Release|x64
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|Win32.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|Win32.Build.0 = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|x64.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.All|x86 Setup.Build.0 = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.Debug|x64.ActiveCfg = Debug|x64
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.Release|Win32.ActiveCfg = Release|Win32
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.Release|x64.ActiveCfg = Release|x64
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|Win32.ActiveCfg = Release|x64
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|x64.ActiveCfg = Release|x64
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|x64.Build.0 = Release|x64
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|x64 Setup.ActiveCfg = Release|x64
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|x64 Setup.Build.0 = Release|x64
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|x86 Setup.ActiveCfg = Release|x64
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|Win32.Build.0 = Debug|Win32
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|x64.ActiveCfg = Debug|x64
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|x64.Build.0 = Debug|x64
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|Win32.ActiveCfg = Release|Win32
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|Win32.Build.0 = Release|Win32
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|x64.ActiveCfg = Release|x64
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|x64.Build.0 = Release|x64
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.All|Win32.ActiveCfg = Release|x86
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.All|x64.ActiveCfg = Release|x86
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.All|x64 Setup.ActiveCfg = Release|x86
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.All|x86 Setup.ActiveCfg = Release|x86
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.Debug|Win32.ActiveCfg = Debug|x86
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.Debug|x64.ActiveCfg = Debug|x64
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.Debug|x64 Setup.Build.0 = Debug|x64
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.Debug|x86 Setup.ActiveCfg = Debug|x86
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.Debug|x86 Setup.Build.0 = Debug|x86
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.Release|Win32.ActiveCfg = Release|x86
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.Release|x64.ActiveCfg = Release|x64
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.Release|x64 Setup.Build.0 = Release|x64
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.Release|x86 Setup.ActiveCfg = Release|x86
-+ {47213370-B933-487D-9F45-BCA26D7E2B6F}.Release|x86 Setup.Build.0 = Release|x86
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.All|Win32.ActiveCfg = Release|x64
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.All|x64.ActiveCfg = Release|x64
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.All|x64.Build.0 = Release|x64
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.All|x64 Setup.ActiveCfg = Release|x64
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.All|x86 Setup.ActiveCfg = Release|x64
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.Debug|Win32.Build.0 = Debug|Win32
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.Debug|x64.ActiveCfg = Debug|x64
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.Debug|x64.Build.0 = Debug|x64
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.Release|Win32.ActiveCfg = Release|Win32
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.Release|Win32.Build.0 = Release|Win32
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.Release|x64.ActiveCfg = Release|x64
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.Release|x64.Build.0 = Release|x64
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {7C22BDFF-CC09-400C-8A09-660733980028}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|Win32.ActiveCfg = Release|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x64.ActiveCfg = Release|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x64.Build.0 = Release|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x64 Setup.ActiveCfg = Release|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x86 Setup.ActiveCfg = Release|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|Win32.Build.0 = Debug|Win32
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|x64.ActiveCfg = Debug|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|x64.Build.0 = Debug|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|Win32.ActiveCfg = Release|Win32
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|Win32.Build.0 = Release|Win32
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64.ActiveCfg = Release|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64.Build.0 = Release|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|Win32.ActiveCfg = Release|x64
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|x64.ActiveCfg = Release|x64
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|x64.Build.0 = Release|x64
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|x64 Setup.ActiveCfg = Release|x64
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|x86 Setup.ActiveCfg = Release|x64
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|Win32.Build.0 = Debug|Win32
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|x64.ActiveCfg = Debug|x64
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|x64.Build.0 = Debug|x64
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|Win32.ActiveCfg = Release|Win32
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|Win32.Build.0 = Release|Win32
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|x64.ActiveCfg = Release|x64
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|x64.Build.0 = Release|x64
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|Win32.ActiveCfg = Release|x64
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|x64.ActiveCfg = Release|x64
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|x64.Build.0 = Release|x64
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|x64 Setup.ActiveCfg = Release|x64
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|x86 Setup.ActiveCfg = Release|x64
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|Win32.Build.0 = Debug|Win32
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|x64.ActiveCfg = Debug|x64
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|x64.Build.0 = Debug|x64
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|Win32.ActiveCfg = Release|Win32
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|Win32.Build.0 = Release|Win32
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|x64.ActiveCfg = Release|x64
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|x64.Build.0 = Release|x64
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.All|Win32.ActiveCfg = Release|x64
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.All|x64.ActiveCfg = Release|x64
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.All|x64.Build.0 = Release|x64
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.All|x64 Setup.ActiveCfg = Release|x64
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.All|x86 Setup.ActiveCfg = Release|x64
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|Win32.Build.0 = Debug|Win32
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|x64.ActiveCfg = Debug|x64
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|x64.Build.0 = Debug|x64
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release|Win32.ActiveCfg = Release|Win32
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release|Win32.Build.0 = Release|Win32
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release|x64.ActiveCfg = Release|x64
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release|x64.Build.0 = Release|x64
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.All|Win32.ActiveCfg = Release|x64
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.All|x64.ActiveCfg = Release|x64
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.All|x64.Build.0 = Release|x64
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.All|x64 Setup.ActiveCfg = Release|x64
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.All|x86 Setup.ActiveCfg = Release|x64
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Debug|Win32.Build.0 = Debug|Win32
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Debug|x64.ActiveCfg = Debug|x64
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Debug|x64.Build.0 = Debug|x64
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|Win32.ActiveCfg = Release|Win32
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|Win32.Build.0 = Release|Win32
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|x64.ActiveCfg = Release|x64
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|x64.Build.0 = Release|x64
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.All|Win32.ActiveCfg = Release|x64
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.All|x64.ActiveCfg = Release|x64
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.All|x64.Build.0 = Release|x64
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.All|x64 Setup.ActiveCfg = Release|x64
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.All|x86 Setup.ActiveCfg = Release|x64
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Debug|Win32.Build.0 = Debug|Win32
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Debug|x64.ActiveCfg = Debug|x64
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Debug|x64.Build.0 = Debug|x64
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|Win32.ActiveCfg = Release|Win32
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|Win32.Build.0 = Release|Win32
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|x64.ActiveCfg = Release|x64
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|x64.Build.0 = Release|x64
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|Win32.ActiveCfg = Release|x64
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|x64.ActiveCfg = Release|x64
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|x64.Build.0 = Release|x64
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|x64 Setup.ActiveCfg = Release|x64
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|x86 Setup.ActiveCfg = Release|x64
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|Win32.Build.0 = Debug|Win32
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|x64.ActiveCfg = Debug|x64
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|x64.Build.0 = Debug|x64
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|Win32.ActiveCfg = Release|Win32
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|Win32.Build.0 = Release|Win32
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|x64.ActiveCfg = Release|x64
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|x64.Build.0 = Release|x64
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|Win32.ActiveCfg = Release|x64
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x64.ActiveCfg = Release|x64
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x64.Build.0 = Release|x64
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x64 Setup.ActiveCfg = Release|x64
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x86 Setup.ActiveCfg = Release|x64
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|x64.ActiveCfg = Debug|x64
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|Win32.ActiveCfg = Release|Win32
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|x64.ActiveCfg = Release|x64
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|x86 Setup.ActiveCfg = Release|x64
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|Win32.ActiveCfg = Release|x64
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x64.ActiveCfg = Release|x64
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x64.Build.0 = Release|x64
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x64 Setup.ActiveCfg = Release|x64
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x86 Setup.ActiveCfg = Release|x64
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|x64.ActiveCfg = Debug|x64
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|Win32.ActiveCfg = Release|Win32
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|x64.ActiveCfg = Release|x64
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|x86 Setup.ActiveCfg = Release|x64
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.All|Win32.ActiveCfg = Release|Win32
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.All|Win32.Build.0 = Release|Win32
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.All|x64.ActiveCfg = Release|Win32
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|Win32.Build.0 = Debug|Win32
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x64.ActiveCfg = Debug|x64
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x64.Build.0 = Debug|x64
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|Win32.ActiveCfg = Release|Win32
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|Win32.Build.0 = Release|Win32
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x64.ActiveCfg = Release|x64
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x64.Build.0 = Release|x64
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|Win32.ActiveCfg = Release|x64
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|x64.ActiveCfg = Release|x64
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|x64.Build.0 = Release|x64
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|x64 Setup.ActiveCfg = Release|x64
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|x86 Setup.ActiveCfg = Release|x64
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|Win32.Build.0 = Debug|Win32
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|x64.ActiveCfg = Debug|x64
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|x64.Build.0 = Debug|x64
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|Win32.ActiveCfg = Release|Win32
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|Win32.Build.0 = Release|Win32
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|x64.ActiveCfg = Release|x64
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|x64.Build.0 = Release|x64
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|x86 Setup.ActiveCfg = Release|x64
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|Win32.ActiveCfg = Release|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|Win32.Build.0 = Release|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|x64.ActiveCfg = Release|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|Win32.Build.0 = Debug|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x64.ActiveCfg = Debug|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x64.Build.0 = Debug|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x64 Setup.ActiveCfg = Debug|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x86 Setup.ActiveCfg = Debug|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|Win32.ActiveCfg = Release|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|Win32.Build.0 = Release|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|x64.ActiveCfg = Release|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|x64.Build.0 = Release|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|Win32.ActiveCfg = Release|Win32
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|Win32.Build.0 = Release|Win32
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|x64.ActiveCfg = Release|Win32
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|x64 Setup.ActiveCfg = Release|Win32
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|x86 Setup.ActiveCfg = Release|Win32
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|Win32.Build.0 = Debug|Win32
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x64.ActiveCfg = Debug|x64
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x64.Build.0 = Debug|x64
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x64 Setup.ActiveCfg = Release|Win32
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x86 Setup.ActiveCfg = Release|Win32
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|Win32.ActiveCfg = Release|Win32
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|Win32.Build.0 = Release|Win32
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x64.ActiveCfg = Release|x64
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x64.Build.0 = Release|x64
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x64 Setup.ActiveCfg = Release|Win32
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x86 Setup.ActiveCfg = Release|Win32
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|Win32.ActiveCfg = Release|x64
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x64.ActiveCfg = Release|x64
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x64.Build.0 = Release|x64
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x64 Setup.ActiveCfg = Release|x64
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x86 Setup.ActiveCfg = Release|x64
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|Win32.Build.0 = Debug|Win32
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|x64.ActiveCfg = Debug|x64
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|x64.Build.0 = Debug|x64
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release|Win32.ActiveCfg = Release|Win32
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release|Win32.Build.0 = Release|Win32
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release|x64.ActiveCfg = Release|x64
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release|x64.Build.0 = Release|x64
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release|x86 Setup.ActiveCfg = Release|x64
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.All|Win32.ActiveCfg = Release|x64
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.All|x64.ActiveCfg = Release|x64
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.All|x64.Build.0 = Release|x64
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.All|x64 Setup.ActiveCfg = Release|x64
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.All|x86 Setup.ActiveCfg = Release|x64
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|Win32.Build.0 = Debug|Win32
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|x64.ActiveCfg = Debug|x64
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|x64.Build.0 = Debug|x64
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.Release|Win32.ActiveCfg = Release|Win32
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.Release|Win32.Build.0 = Release|Win32
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.Release|x64.ActiveCfg = Release|x64
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.Release|x64.Build.0 = Release|x64
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {BED7539C-0099-4A14-AD5D-30828F15A171}.Release|x86 Setup.ActiveCfg = Release|x64
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.All|Win32.ActiveCfg = Release|x64
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.All|x64.ActiveCfg = Release|x64
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.All|x64.Build.0 = Release|x64
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.All|x64 Setup.ActiveCfg = Release|x64
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.All|x86 Setup.ActiveCfg = Release|x64
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|Win32.Build.0 = Debug|Win32
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|x64.ActiveCfg = Debug|x64
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|x64.Build.0 = Debug|x64
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release|Win32.ActiveCfg = Release|Win32
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release|Win32.Build.0 = Release|Win32
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release|x64.ActiveCfg = Release|x64
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release|x64.Build.0 = Release|x64
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release|x86 Setup.ActiveCfg = Release|x64
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.All|Win32.ActiveCfg = Release|x64
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.All|x64.ActiveCfg = Release|x64
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.All|x64.Build.0 = Release|x64
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.All|x64 Setup.ActiveCfg = Release|x64
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.All|x86 Setup.ActiveCfg = Release|x64
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|Win32.Build.0 = Debug|Win32
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|x64.ActiveCfg = Debug|x64
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|x64.Build.0 = Debug|x64
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release|Win32.ActiveCfg = Release|Win32
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release|Win32.Build.0 = Release|Win32
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release|x64.ActiveCfg = Release|x64
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release|x64.Build.0 = Release|x64
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release|x86 Setup.ActiveCfg = Release|x64
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.All|Win32.ActiveCfg = Release|x64
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.All|x64.ActiveCfg = Release|x64
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.All|x64.Build.0 = Release|x64
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.All|x64 Setup.ActiveCfg = Release|x64
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.All|x86 Setup.ActiveCfg = Release|x64
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|Win32.ActiveCfg = Debug|Win32
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|Win32.Build.0 = Debug|Win32
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|x64.ActiveCfg = Debug|x64
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|x64.Build.0 = Debug|x64
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|x64 Setup.ActiveCfg = Debug|x64
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|x86 Setup.ActiveCfg = Debug|x64
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.Release|Win32.ActiveCfg = Release|Win32
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.Release|Win32.Build.0 = Release|Win32
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.Release|x64.ActiveCfg = Release|x64
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.Release|x64.Build.0 = Release|x64
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.Release|x64 Setup.ActiveCfg = Release|x64
-+ {B535402E-38D2-4D54-8360-423ACBD17192}.Release|x86 Setup.ActiveCfg = Release|x64
-+ EndGlobalSection
-+ GlobalSection(SolutionProperties) = preSolution
-+ HideSolutionNode = FALSE
-+ EndGlobalSection
-+ GlobalSection(NestedProjects) = preSolution
-+ {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {5580D60E-0F77-4716-9CD4-B8E5986FA375} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {D3EC0AFF-76FC-4210-A825-9A17410660A3} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {FEA1EEF7-876F-48DE-88BF-C0E3E606D758} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {7F1610F1-DD5A-4CF7-8610-30AB12C60ADD} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {8DEB383C-4091-4F42-A56F-C9E46D552D79} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {2C3C2423-234B-4772-8899-D3B137E5CA35} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {0B6C905B-142E-4999-B39D-92FF7951E921} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {D5C87B19-150D-4EF3-A671-96589BD2D14A} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {4D418176-3B33-47E6-A63E-01BA34ADD21C} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {AFA983D6-4569-4F88-BA94-555ED00FD9A8} = {F881ADA2-2F1A-4046-9FEB-191D9422D781}
-+ {5FD31A25-5D83-4794-8BEE-904DAD84CE71} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {0DF3ABD0-DDC0-4265-B778-07C66780979B} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {B3F424EC-3D8F-417C-B244-3919D5E1A577} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {05C9FB27-480E-4D53-B3B7-6338E2526666} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {CC1DD008-9406-448D-A0AD-33C3186CFADB} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {48414740-C693-4968-9846-EE058020C64F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {05C9FB27-480E-4D53-B3B7-7338E2514666} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {74B120FF-6935-4DFE-A142-CDB6BEA99C90} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
-+ {30A5B29C-983E-4580-9FD0-D647CCDCC7EB} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {C24FB505-05D7-4319-8485-7540B44C8603} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {B5881A85-FE70-4F64-8607-2CAAE52669C6} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {71A967D5-0E99-4CEF-A587-98836EE6F2EF} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {3850D93A-5F24-4922-BC1C-74D08C37C256} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {D7F1E3F2-A3F4-474C-8555-15122571AF52} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {F6A33240-8F29-48BD-98F0-826995911799} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {65A6273D-FCAB-4C55-B09E-65100141A5D4} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {E3246D17-E29B-4AB5-962A-C69B0C5837BB} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {14E4A972-9CFB-436D-B0A5-4943F3F80D47} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {329FD5B0-EF28-4606-86D0-F6EA21CF8E36} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {3C977801-FE88-48F2-83D3-FA2EBFF6688E} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {432DB165-1EB2-4781-A9C0-71E62610B20A} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {990BAA76-89D3-4E38-8479-C7B28784EFC8} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {1E21AFE0-6FDB-41D2-942D-863607C24B91} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {2E250296-0C08-4342-9C8A-BCBDD0E7DF65} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {B889A18E-70A7-44B5-B2C9-47798D4F43B3} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {50AAC2CE-BFC9-4912-87CC-C6381850D735} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {4748FF56-CA85-4809-97D6-A94C0FAC1D77} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {60C542EE-6882-4EA2-8C21-5AB6DB1BA73F} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {2469B306-B027-4FF2-8815-C9C1EA2CAE79} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
-+ {07113B25-D3AF-4E04-BA77-4CD1171F022C} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}
-+ {A27CCA23-1541-4337-81A4-F0A6413078A0} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}
-+ {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}
-+ {784113EF-44D9-4949-835D-7065D3C7AD08} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}
-+ {05515420-16DE-4E63-BE73-85BE85BA5142} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}
-+ {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E} = {9ADF1E48-2F5C-4ED7-A893-596259FABFE0}
-+ {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6} = {A5A27244-AD24-46E5-B01B-840CD296C91D}
-+ {9254C4B0-6F60-42B6-BB3A-36D63FC001C7} = {A5A27244-AD24-46E5-B01B-840CD296C91D}
-+ {2CA40887-1622-46A1-A7F9-17FD7E7E545B} = {A5A27244-AD24-46E5-B01B-840CD296C91D}
-+ {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52} = {A5A27244-AD24-46E5-B01B-840CD296C91D}
-+ {38FE0559-9910-43A8-9E45-3E5004C27692} = {A5A27244-AD24-46E5-B01B-840CD296C91D}
-+ {CBD81696-EFB4-4D2F-8451-1B8DAA86155A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {62F27B1A-C919-4A70-8478-51F178F3B18F} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {89385C74-5860-4174-9CAF-A39E7C48909C} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {1906D736-08BD-4EE1-924F-B536249B9A54} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {EEF031CB-FED8-451E-A471-91EC8D4F6750} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {8D04B550-D240-4A44-8A18-35DA3F7038D9} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {1CED5987-A529-46DC-B30F-870D85FF9C94} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {F6C55D93-B927-4483-BB69-15AEF3DD2DFF} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {F057DA7F-79E5-4B00-845C-EF446EF055E3} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {E727E8F6-935D-46FE-8B0E-37834748A0E3} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {3D0370CA-BED2-4657-A475-32375CBCB6E4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {87EE9DA4-DE1E-4448-8324-183C98DCA588} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {155844C3-EC5F-407F-97A4-A2DDADED9B2F} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {204FA0DE-305D-4414-AE2E-F195A23F390D} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {4043FC6A-9A30-4577-8AD5-9B233C9575D8} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {0A18A071-125E-442F-AFF7-A3F68ABECF99} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {94001A0E-A837-445C-8004-F918F10D0226} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {0AD1177E-1FD8-4643-9391-431467A11084} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {E316772F-5D8F-4F2A-8F71-094C3E859D34} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {D3D8B329-20BE-475E-9E83-653CEA0E0EF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {419C8F80-D858-4B48-A25C-AF4007608137} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {CF405366-9558-4AE8-90EF-5E21B51CCB4E} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {401A40CD-5DB4-4E34-AC68-FA99E9FAC014} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {E972C52F-9E85-4D65-B19C-031E511E9DB4} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {03207781-0D1C-4DB3-A71D-45C608F28DBD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {9A5DDF08-C88C-4A35-B7F6-D605228446BD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {D0B36172-CD76-454A-9B89-990025266C2A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {DEE932AB-5911-4700-9EEB-8C7090A0A330} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {329A6FA0-0FCC-4435-A950-E670AEFA9838} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {CF70F278-3364-4395-A2E1-23501C9B8AD2} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {ABB71A76-42B0-47A4-973A-42E3D920C6FD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {9778F1C0-09BC-4698-8EBC-BD982247209A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {56B91D01-9150-4BBF-AFA1-5B68AB991B76} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {23B4D303-79FC-49E0-89E2-2280E7E28940} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {9DE35039-A8F6-4FBF-B1B6-EB527F802411} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {C13CC324-0032-4492-9A30-310A6BD64FF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
-+ {EC3E5C7F-EE09-47E2-80FE-546363D14A98} = {B8F5B47B-8568-46EB-B320-64C17D2A98BC}
-+ {1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {ACFFF684-4D19-4D48-AF12-88EA1D778BDF} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {8F992C49-6C51-412F-B2A3-34EAB708EB65} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {0A6B5EA5-6E9B-4A51-931F-ED25AA87B4DF} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {028C7278-05D7-4E18-82FE-BE231B844F41} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {36E854E3-CE12-4348-A125-CCF3F9D74813} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {7B077E7F-1BE7-4291-AB86-55E527B25CAC} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {834E2B2F-5483-4B80-8FE3-FE48FF76E5C0} = {0C808854-54D1-4230-BFF5-77B5FD905000}
-+ {692F6330-4D87-4C82-81DF-40DB5892636E} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}
-+ {2286DA73-9FC5-45BC-A508-85994C3317AB} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}
-+ {66444AEE-554C-11DD-A9F0-8C5D56D89593} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}
-+ {D07C378A-F5F7-438F-ADF3-4AC4FB1883CD} = {4CF6A6AC-07DE-4B9E-ABE1-7F98B64E0BB0}
-+ {1C453396-D912-4213-89FD-9B489162B7B5} = {A7AB4405-FDB7-4853-9FBB-1516B1C3D80A}
-+ {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909} = {A7AB4405-FDB7-4853-9FBB-1516B1C3D80A}
-+ {CBEC7225-0C21-4DA8-978E-1F158F8AD950} = {F69A4A6B-9360-4EBB-A280-22AA3C455AC5}
-+ {AB91A099-7690-4ECF-8994-E458F4EA1ED4} = {F69A4A6B-9360-4EBB-A280-22AA3C455AC5}
-+ {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836} = {F69A4A6B-9360-4EBB-A280-22AA3C455AC5}
-+ {1A1FF289-4FD6-4285-A422-D31DD67A4723} = {CBD81696-EFB4-4D2F-8451-1B8DAA86155A}
-+ {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {4F92B672-DADB-4047-8D6A-4BB3796733FD} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {2DEE4895-1134-439C-B688-52203E57D878} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {3CE1DC99-8246-4DB1-A709-74F19F08EC67} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {87A1FE3D-F410-4C8E-9591-8C625985BC70} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {E796E337-DE78-4303-8614-9A590862EE95} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {1F0A8A77-E661-418F-BB92-82172AE43803} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {4F5C9D55-98EF-4256-8311-32D7BD360406} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {E10571C4-E7F4-4608-B5F2-B22E7EB95400} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {B808178B-82F0-4CF4-A2B1-921939FA24D0} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {D578E676-7EC8-4548-BD8B-845C635F14AD} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {652AD5F7-8488-489F-AAD0-7FBE064703B6} = {C120A020-773F-4EA3-923F-B67AF28B750D}
-+ {988CACF7-3FCB-4992-BE69-77872AE67DC8} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {5BC072DB-3826-48EA-AF34-FE32AA01E83B} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {FA429E98-8B03-45E6-A096-A4BC5E821DE4} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {06E3A538-AB32-44F2-B477-755FF9CB5D37} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {A4B122CF-5196-476B-8C0E-D8BD59AC3C14} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {0382E8FD-CFDC-41C0-8B03-792C7C84FC31} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {7C22BDFF-CC09-400C-8A09-660733980028} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
-+ {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0} = {57D119DC-484F-420F-B9E9-8589FD9A8DF8}
-+ {3C90CCF0-2CDD-4A7A-ACFF-208C1E271692} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}
-+ {C7E2382E-2C22-4D18-BF93-80C6A1FFA7AC} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}
-+ {FC71C66E-E268-4EAD-B1F5-F008DC382E83} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}
-+ {8E2E8798-8B6F-4A55-8E4F-4E6FDE40ED26} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}
-+ {09455AA9-C243-4F16-A1A1-A016881A2765} = {3B08FEFD-4D3D-4C16-BA94-EE83509E32A0}
-+ {CDE9B06A-3C27-4987-8FAE-DF1006BC705D} = {DB1024A8-41BF-4AD7-9AE6-13202230D1F3}
-+ {57199684-EC63-4A60-9DC6-11815AF6B413} = {09455AA9-C243-4F16-A1A1-A016881A2765}
-+ {2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C} = {09455AA9-C243-4F16-A1A1-A016881A2765}
-+ {D4A12E4C-DBDA-4614-BA26-3425AE9F60F5} = {09455AA9-C243-4F16-A1A1-A016881A2765}
-+ {765EF1B9-5027-4820-BC37-A44466A51631} = {57199684-EC63-4A60-9DC6-11815AF6B413}
-+ {713E4747-1126-40B1-BD84-58F9A7745423} = {57199684-EC63-4A60-9DC6-11815AF6B413}
-+ {D3E5C8ED-3A6A-4FEA-92A2-48A0BA865358} = {2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C}
-+ {CC3E7F48-2590-49CB-AD8B-BE3650F55462} = {2DED4BA2-D6B0-4064-BB2A-76DE3AA49E7C}
-+ {F1B71990-EB04-4EB5-B28A-BC3EB6F7E843} = {D4A12E4C-DBDA-4614-BA26-3425AE9F60F5}
-+ {3DAF028C-AB5B-4183-A01B-DCC43F5A87F0} = {D4A12E4C-DBDA-4614-BA26-3425AE9F60F5}
-+ {7A8D8174-B355-4114-AFC1-04777CB9DE0A} = {4F227C26-768F-46A3-8684-1D08A46FB374}
-+ {7EB71250-F002-4ED8-92CA-CA218114537A} = {4F227C26-768F-46A3-8684-1D08A46FB374}
-+ {464AAB78-5489-4916-BE51-BF8D61822311} = {4F227C26-768F-46A3-8684-1D08A46FB374}
-+ {D1ABE208-6442-4FB4-9AAD-1677E41BC870} = {4F227C26-768F-46A3-8684-1D08A46FB374}
-+ {BA599D0A-4310-4505-91DA-6A6447B3E289} = {4F227C26-768F-46A3-8684-1D08A46FB374}
-+ {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959} = {4F227C26-768F-46A3-8684-1D08A46FB374}
-+ {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {B5A00BFA-6083-4FAE-A097-71642D6473B5} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {1C320193-46A6-4B34-9C56-8AB584FC1B56} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {72782932-37CC-46AE-8C7F-9A7B1A6EE108} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {12A49562-BAB9-43A3-A21D-15B60BBB4C31} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {504B3154-7A4F-459D-9877-B951021C3F1F} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {746F3632-5BB2-4570-9453-31D6D58A7D8E} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {DEB01ACB-D65F-4A62-AED9-58C1054499E9} = {62F27B1A-C919-4A70-8478-51F178F3B18F}
-+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A}
-+ {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A}
-+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79} = {E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A}
-+ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9} = {9DE35039-A8F6-4FBF-B1B6-EB527F802411}
-+ {BED7539C-0099-4A14-AD5D-30828F15A171} = {9DE35039-A8F6-4FBF-B1B6-EB527F802411}
-+ {0D108721-EAE8-4BAF-8102-D8960EC93647} = {9DE35039-A8F6-4FBF-B1B6-EB527F802411}
-+ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA} = {9DE35039-A8F6-4FBF-B1B6-EB527F802411}
-+ {B535402E-38D2-4D54-8360-423ACBD17192} = {9DE35039-A8F6-4FBF-B1B6-EB527F802411}
-+ EndGlobalSection
-+EndGlobal
+ {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {94001A0E-A837-445C-8004-F918F10D0226} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {0AD1177E-1FD8-4643-9391-431467A11084} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+@@ -3832,6 +3860,7 @@ Global
+ {E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {70A49BC2-7500-41D0-B75D-EDCC5BE987A0} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {23B4D303-79FC-49E0-89E2-2280E7E28940} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
++ {9DE35039-A8F6-4FBF-B1B6-EB527F802411} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {C13CC324-0032-4492-9A30-310A6BD64FF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+ {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}\r
+@@ -3917,5 +3946,10 @@ Global
+ {D331904D-A00A-4694-A5A3-FCFF64AB5DBE} = {E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A}\r
+ {B4B62169-5AD4-4559-8707-3D933AC5DB39} = {E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A}\r
+ {25BD39B1-C8BF-4676-A738-9CABD9C6BC79} = {E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A}\r
++ {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9} = {9DE35039-A8F6-4FBF-B1B6-EB527F802411}\r
++ {BED7539C-0099-4A14-AD5D-30828F15A171} = {9DE35039-A8F6-4FBF-B1B6-EB527F802411}\r
++ {0D108721-EAE8-4BAF-8102-D8960EC93647} = {9DE35039-A8F6-4FBF-B1B6-EB527F802411}\r
++ {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA} = {9DE35039-A8F6-4FBF-B1B6-EB527F802411}\r
++ {B535402E-38D2-4D54-8360-423ACBD17192} = {9DE35039-A8F6-4FBF-B1B6-EB527F802411}\r
+ EndGlobalSection\r
+ EndGlobal\r
diff --git a/configure.in b/configure.in
index b8db9bc..89cf47d 100644
--- a/configure.in
!/yaml/configure
-
diff --git a/libs/win32/apr-util/libaprutil.2010.vcxproj.filters b/libs/win32/apr-util/libaprutil.2010.vcxproj.filters
-index 9ba92f9..66ad7f9 100644
+index 9ba92f9..c7cf5f2 100644
--- a/libs/win32/apr-util/libaprutil.2010.vcxproj.filters
+++ b/libs/win32/apr-util/libaprutil.2010.vcxproj.filters
-@@ -1,304 +1,307 @@
--<?xml version="1.0" encoding="utf-8"?>\r
--<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-- <ItemGroup>\r
-- <Filter Include="Source Files">\r
-- <UniqueIdentifier>{fefe4b16-83a4-46b0-ab4b-858531a32218}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Source Files\buckets">\r
-- <UniqueIdentifier>{66bee6b2-6ba2-4e7d-9c04-5e52ea75b8ee}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Source Files\crypto">\r
-- <UniqueIdentifier>{ec602915-b144-4258-81ce-f8931434e1eb}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Source Files\dbd">\r
-- <UniqueIdentifier>{47b5e91f-ec43-4b87-8d11-cc109d0f0733}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Source Files\dbm">\r
-- <UniqueIdentifier>{12d41721-8bc3-476e-bffa-6bab3ebbcfef}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Source Files\encoding">\r
-- <UniqueIdentifier>{aafe340f-5f94-4402-a3f4-977c302848c1}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Source Files\hooks">\r
-- <UniqueIdentifier>{627c064a-54af-49ae-b154-01343f2be90e}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Source Files\ldap">\r
-- <UniqueIdentifier>{3791a803-8653-410b-905e-934728270db6}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Source Files\misc">\r
-- <UniqueIdentifier>{5133e514-d14d-46b5-9e37-3ab909e4ef28}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Source Files\sdbm">\r
-- <UniqueIdentifier>{62959b64-29f8-483f-830f-91e3005c15b9}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Source Files\strmatch">\r
-- <UniqueIdentifier>{ec299ad2-8fa6-4923-95f4-b8c7f6184dcf}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Source Files\uri">\r
-- <UniqueIdentifier>{ef13505a-0a7a-4fdc-a55a-b47e92957a85}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Source Files\xlate">\r
-- <UniqueIdentifier>{80fa8ffc-4776-4a21-bd8b-bfa055f9f46d}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Generated Files">\r
-- <UniqueIdentifier>{fdb27306-6946-4cf2-bdb6-39e03cdeeae6}</UniqueIdentifier>\r
-- </Filter>\r
-- <Filter Include="Public Header Files">\r
-- <UniqueIdentifier>{ee62af10-73ee-4af5-85d1-442efcd33aa2}</UniqueIdentifier>\r
-- </Filter>\r
-- </ItemGroup>\r
-- <ItemGroup>\r
-- <ClCompile Include="..\..\apr-util\buckets\apr_brigade.c">\r
-- <Filter>Source Files\buckets</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\buckets\apr_buckets.c">\r
-- <Filter>Source Files\buckets</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\buckets\apr_buckets_alloc.c">\r
-- <Filter>Source Files\buckets</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\buckets\apr_buckets_eos.c">\r
-- <Filter>Source Files\buckets</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\buckets\apr_buckets_file.c">\r
-- <Filter>Source Files\buckets</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\buckets\apr_buckets_flush.c">\r
-- <Filter>Source Files\buckets</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\buckets\apr_buckets_heap.c">\r
-- <Filter>Source Files\buckets</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\buckets\apr_buckets_mmap.c">\r
-- <Filter>Source Files\buckets</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\buckets\apr_buckets_pipe.c">\r
-- <Filter>Source Files\buckets</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\buckets\apr_buckets_pool.c">\r
-- <Filter>Source Files\buckets</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\buckets\apr_buckets_refcount.c">\r
-- <Filter>Source Files\buckets</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\buckets\apr_buckets_simple.c">\r
-- <Filter>Source Files\buckets</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\buckets\apr_buckets_socket.c">\r
-- <Filter>Source Files\buckets</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\crypto\apr_md4.c">\r
-- <Filter>Source Files\crypto</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\crypto\apr_md5.c">\r
-- <Filter>Source Files\crypto</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\crypto\apr_sha1.c">\r
-- <Filter>Source Files\crypto</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\crypto\getuuid.c">\r
-- <Filter>Source Files\crypto</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\crypto\uuid.c">\r
-- <Filter>Source Files\crypto</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\dbd\apr_dbd.c">\r
-- <Filter>Source Files\dbd</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\dbd\apr_dbd_pgsql.c">\r
-- <Filter>Source Files\dbd</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\dbd\apr_dbd_sqlite2.c">\r
-- <Filter>Source Files\dbd</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\dbd\apr_dbd_sqlite3.c">\r
-- <Filter>Source Files\dbd</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\dbm\apr_dbm.c">\r
-- <Filter>Source Files\dbm</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\dbm\apr_dbm_berkeleydb.c">\r
-- <Filter>Source Files\dbm</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\dbm\apr_dbm_gdbm.c">\r
-- <Filter>Source Files\dbm</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\dbm\apr_dbm_sdbm.c">\r
-- <Filter>Source Files\dbm</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\encoding\apr_base64.c">\r
-- <Filter>Source Files\encoding</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\hooks\apr_hooks.c">\r
-- <Filter>Source Files\hooks</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\ldap\apr_ldap_init.c">\r
-- <Filter>Source Files\ldap</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\ldap\apr_ldap_option.c">\r
-- <Filter>Source Files\ldap</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\ldap\apr_ldap_url.c">\r
-- <Filter>Source Files\ldap</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\misc\apr_date.c">\r
-- <Filter>Source Files\misc</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\misc\apr_queue.c">\r
-- <Filter>Source Files\misc</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\misc\apr_reslist.c">\r
-- <Filter>Source Files\misc</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\misc\apr_rmm.c">\r
-- <Filter>Source Files\misc</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\dbm\sdbm\sdbm.c">\r
-- <Filter>Source Files\sdbm</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\dbm\sdbm\sdbm_hash.c">\r
-- <Filter>Source Files\sdbm</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\dbm\sdbm\sdbm_lock.c">\r
-- <Filter>Source Files\sdbm</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\dbm\sdbm\sdbm_pair.c">\r
-- <Filter>Source Files\sdbm</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\strmatch\apr_strmatch.c">\r
-- <Filter>Source Files\strmatch</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\uri\apr_uri.c">\r
-- <Filter>Source Files\uri</Filter>\r
-- </ClCompile>\r
-- <ClCompile Include="..\..\apr-util\xlate\xlate.c">\r
-- <Filter>Source Files\xlate</Filter>\r
-- </ClCompile>\r
+@@ -46,6 +46,9 @@
+ <Filter Include="Public Header Files">\r
+ <UniqueIdentifier>{ee62af10-73ee-4af5-85d1-442efcd33aa2}</UniqueIdentifier>\r
+ </Filter>\r
++ <Filter Include="Source Files\xml">\r
++ <UniqueIdentifier>{0ea472ce-22be-43c7-b06d-a50dd027a9fe}</UniqueIdentifier>\r
++ </Filter>\r
+ </ItemGroup>\r
+ <ItemGroup>\r
+ <ClCompile Include="..\..\apr-util\buckets\apr_brigade.c">\r
+@@ -174,8 +177,8 @@
+ <ClCompile Include="..\..\apr-util\xlate\xlate.c">\r
+ <Filter>Source Files\xlate</Filter>\r
+ </ClCompile>\r
- <ClCompile Include="..\..\apr-util\xml\apr_xml.c" />\r
- </ItemGroup>\r
-- <ItemGroup>\r
-- <ClInclude Include="..\..\apr-util\include\apr_anylock.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_base64.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_buckets.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_date.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_dbm.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_hooks.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_ldap_url.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_md4.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_md5.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_optional.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_optional_hooks.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_queue.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_reslist.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_rmm.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_sdbm.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_sha1.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_strmatch.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_uri.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_uuid.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_xlate.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apr_xml.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- <ClInclude Include="..\..\apr-util\include\apu_version.h">\r
-- <Filter>Public Header Files</Filter>\r
-- </ClInclude>\r
-- </ItemGroup>\r
-- <ItemGroup>\r
-- <None Include="..\..\apr-util\include\apr_ldap.h.in">\r
-- <Filter>Generated Files</Filter>\r
-- </None>\r
-- <None Include="..\..\apr-util\include\apr_ldap.hnw">\r
-- <Filter>Generated Files</Filter>\r
-- </None>\r
-- <None Include="..\..\apr-util\include\apu.h.in">\r
-- <Filter>Generated Files</Filter>\r
-- </None>\r
-- <None Include="..\..\apr-util\include\apu.hnw">\r
-- <Filter>Generated Files</Filter>\r
-- </None>\r
-- <None Include="..\..\apr-util\include\private\apu_config.h.in">\r
-- <Filter>Generated Files</Filter>\r
-- </None>\r
-- <None Include="..\..\apr-util\include\private\apu_select_dbm.h.in">\r
-- <Filter>Generated Files</Filter>\r
-- </None>\r
-- <None Include="..\..\apr-util\include\apu_want.h.in">\r
-- <Filter>Generated Files</Filter>\r
-- </None>\r
-- <None Include="..\..\apr-util\include\apu_want.hnw">\r
-- <Filter>Generated Files</Filter>\r
-- </None>\r
-- </ItemGroup>\r
-- <ItemGroup>\r
-- <ResourceCompile Include="..\..\apr-util\libaprutil.rc" />\r
-- </ItemGroup>\r
-- <ItemGroup>\r
-- <CustomBuildStep Include="..\..\apr-util\dbm\sdbm\sdbm_pair.h">\r
-- <Filter>Source Files\sdbm</Filter>\r
-- </CustomBuildStep>\r
-- <CustomBuildStep Include="..\..\apr-util\dbm\sdbm\sdbm_private.h">\r
-- <Filter>Source Files\sdbm</Filter>\r
-- </CustomBuildStep>\r
-- <CustomBuildStep Include="..\..\apr-util\dbm\sdbm\sdbm_tune.h">\r
-- <Filter>Source Files\sdbm</Filter>\r
-- </CustomBuildStep>\r
-- </ItemGroup>\r
-- <ItemGroup>\r
-- <CustomBuild Include="..\..\apr-util\include\apr_ldap.hw">\r
-- <Filter>Generated Files</Filter>\r
-- </CustomBuild>\r
-- <CustomBuild Include="..\..\apr-util\include\apu.hw">\r
-- <Filter>Generated Files</Filter>\r
-- </CustomBuild>\r
-- <CustomBuild Include="..\..\apr-util\include\private\apu_config.hw">\r
-- <Filter>Generated Files</Filter>\r
-- </CustomBuild>\r
-- <CustomBuild Include="..\..\apr-util\include\private\apu_select_dbm.hw">\r
-- <Filter>Generated Files</Filter>\r
-- </CustomBuild>\r
-- <CustomBuild Include="..\..\apr-util\include\apu_want.hw">\r
-- <Filter>Generated Files</Filter>\r
-- </CustomBuild>\r
-- </ItemGroup>\r
-+<?xml version="1.0" encoding="utf-8"?>
-+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-+ <ItemGroup>
-+ <Filter Include="Source Files">
-+ <UniqueIdentifier>{fefe4b16-83a4-46b0-ab4b-858531a32218}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Source Files\buckets">
-+ <UniqueIdentifier>{66bee6b2-6ba2-4e7d-9c04-5e52ea75b8ee}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Source Files\crypto">
-+ <UniqueIdentifier>{ec602915-b144-4258-81ce-f8931434e1eb}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Source Files\dbd">
-+ <UniqueIdentifier>{47b5e91f-ec43-4b87-8d11-cc109d0f0733}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Source Files\dbm">
-+ <UniqueIdentifier>{12d41721-8bc3-476e-bffa-6bab3ebbcfef}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Source Files\encoding">
-+ <UniqueIdentifier>{aafe340f-5f94-4402-a3f4-977c302848c1}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Source Files\hooks">
-+ <UniqueIdentifier>{627c064a-54af-49ae-b154-01343f2be90e}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Source Files\ldap">
-+ <UniqueIdentifier>{3791a803-8653-410b-905e-934728270db6}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Source Files\misc">
-+ <UniqueIdentifier>{5133e514-d14d-46b5-9e37-3ab909e4ef28}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Source Files\sdbm">
-+ <UniqueIdentifier>{62959b64-29f8-483f-830f-91e3005c15b9}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Source Files\strmatch">
-+ <UniqueIdentifier>{ec299ad2-8fa6-4923-95f4-b8c7f6184dcf}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Source Files\uri">
-+ <UniqueIdentifier>{ef13505a-0a7a-4fdc-a55a-b47e92957a85}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Source Files\xlate">
-+ <UniqueIdentifier>{80fa8ffc-4776-4a21-bd8b-bfa055f9f46d}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Generated Files">
-+ <UniqueIdentifier>{fdb27306-6946-4cf2-bdb6-39e03cdeeae6}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Public Header Files">
-+ <UniqueIdentifier>{ee62af10-73ee-4af5-85d1-442efcd33aa2}</UniqueIdentifier>
-+ </Filter>
-+ <Filter Include="Source Files\xml">
-+ <UniqueIdentifier>{0ea472ce-22be-43c7-b06d-a50dd027a9fe}</UniqueIdentifier>
-+ </Filter>
-+ </ItemGroup>
-+ <ItemGroup>
-+ <ClCompile Include="..\..\apr-util\buckets\apr_brigade.c">
-+ <Filter>Source Files\buckets</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\buckets\apr_buckets.c">
-+ <Filter>Source Files\buckets</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\buckets\apr_buckets_alloc.c">
-+ <Filter>Source Files\buckets</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\buckets\apr_buckets_eos.c">
-+ <Filter>Source Files\buckets</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\buckets\apr_buckets_file.c">
-+ <Filter>Source Files\buckets</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\buckets\apr_buckets_flush.c">
-+ <Filter>Source Files\buckets</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\buckets\apr_buckets_heap.c">
-+ <Filter>Source Files\buckets</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\buckets\apr_buckets_mmap.c">
-+ <Filter>Source Files\buckets</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\buckets\apr_buckets_pipe.c">
-+ <Filter>Source Files\buckets</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\buckets\apr_buckets_pool.c">
-+ <Filter>Source Files\buckets</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\buckets\apr_buckets_refcount.c">
-+ <Filter>Source Files\buckets</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\buckets\apr_buckets_simple.c">
-+ <Filter>Source Files\buckets</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\buckets\apr_buckets_socket.c">
-+ <Filter>Source Files\buckets</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\crypto\apr_md4.c">
-+ <Filter>Source Files\crypto</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\crypto\apr_md5.c">
-+ <Filter>Source Files\crypto</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\crypto\apr_sha1.c">
-+ <Filter>Source Files\crypto</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\crypto\getuuid.c">
-+ <Filter>Source Files\crypto</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\crypto\uuid.c">
-+ <Filter>Source Files\crypto</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\dbd\apr_dbd.c">
-+ <Filter>Source Files\dbd</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\dbd\apr_dbd_pgsql.c">
-+ <Filter>Source Files\dbd</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\dbd\apr_dbd_sqlite2.c">
-+ <Filter>Source Files\dbd</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\dbd\apr_dbd_sqlite3.c">
-+ <Filter>Source Files\dbd</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\dbm\apr_dbm.c">
-+ <Filter>Source Files\dbm</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\dbm\apr_dbm_berkeleydb.c">
-+ <Filter>Source Files\dbm</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\dbm\apr_dbm_gdbm.c">
-+ <Filter>Source Files\dbm</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\dbm\apr_dbm_sdbm.c">
-+ <Filter>Source Files\dbm</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\encoding\apr_base64.c">
-+ <Filter>Source Files\encoding</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\hooks\apr_hooks.c">
-+ <Filter>Source Files\hooks</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\ldap\apr_ldap_init.c">
-+ <Filter>Source Files\ldap</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\ldap\apr_ldap_option.c">
-+ <Filter>Source Files\ldap</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\ldap\apr_ldap_url.c">
-+ <Filter>Source Files\ldap</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\misc\apr_date.c">
-+ <Filter>Source Files\misc</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\misc\apr_queue.c">
-+ <Filter>Source Files\misc</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\misc\apr_reslist.c">
-+ <Filter>Source Files\misc</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\misc\apr_rmm.c">
-+ <Filter>Source Files\misc</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\dbm\sdbm\sdbm.c">
-+ <Filter>Source Files\sdbm</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\dbm\sdbm\sdbm_hash.c">
-+ <Filter>Source Files\sdbm</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\dbm\sdbm\sdbm_lock.c">
-+ <Filter>Source Files\sdbm</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\dbm\sdbm\sdbm_pair.c">
-+ <Filter>Source Files\sdbm</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\strmatch\apr_strmatch.c">
-+ <Filter>Source Files\strmatch</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\uri\apr_uri.c">
-+ <Filter>Source Files\uri</Filter>
-+ </ClCompile>
-+ <ClCompile Include="..\..\apr-util\xlate\xlate.c">
-+ <Filter>Source Files\xlate</Filter>
-+ </ClCompile>
+ <ClCompile Include="..\..\apr-util\xml\apr_xml.c" />
+ </ItemGroup>
-+ <ItemGroup>
-+ <ClInclude Include="..\..\apr-util\include\apr_anylock.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_base64.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_buckets.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_date.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_dbm.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_hooks.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_ldap_url.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_md4.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_md5.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_optional.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_optional_hooks.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_queue.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_reslist.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_rmm.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_sdbm.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_sha1.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_strmatch.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_uri.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_uuid.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_xlate.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apr_xml.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ <ClInclude Include="..\..\apr-util\include\apu_version.h">
-+ <Filter>Public Header Files</Filter>
-+ </ClInclude>
-+ </ItemGroup>
-+ <ItemGroup>
-+ <None Include="..\..\apr-util\include\apr_ldap.h.in">
-+ <Filter>Generated Files</Filter>
-+ </None>
-+ <None Include="..\..\apr-util\include\apr_ldap.hnw">
-+ <Filter>Generated Files</Filter>
-+ </None>
-+ <None Include="..\..\apr-util\include\apu.h.in">
-+ <Filter>Generated Files</Filter>
-+ </None>
-+ <None Include="..\..\apr-util\include\apu.hnw">
-+ <Filter>Generated Files</Filter>
-+ </None>
-+ <None Include="..\..\apr-util\include\private\apu_config.h.in">
-+ <Filter>Generated Files</Filter>
-+ </None>
-+ <None Include="..\..\apr-util\include\private\apu_select_dbm.h.in">
-+ <Filter>Generated Files</Filter>
-+ </None>
-+ <None Include="..\..\apr-util\include\apu_want.h.in">
-+ <Filter>Generated Files</Filter>
-+ </None>
-+ <None Include="..\..\apr-util\include\apu_want.hnw">
-+ <Filter>Generated Files</Filter>
-+ </None>
-+ </ItemGroup>
-+ <ItemGroup>
-+ <ResourceCompile Include="..\..\apr-util\libaprutil.rc" />
-+ </ItemGroup>
-+ <ItemGroup>
-+ <CustomBuildStep Include="..\..\apr-util\dbm\sdbm\sdbm_pair.h">
-+ <Filter>Source Files\sdbm</Filter>
-+ </CustomBuildStep>
-+ <CustomBuildStep Include="..\..\apr-util\dbm\sdbm\sdbm_private.h">
-+ <Filter>Source Files\sdbm</Filter>
-+ </CustomBuildStep>
-+ <CustomBuildStep Include="..\..\apr-util\dbm\sdbm\sdbm_tune.h">
-+ <Filter>Source Files\sdbm</Filter>
-+ </CustomBuildStep>
-+ </ItemGroup>
-+ <ItemGroup>
-+ <CustomBuild Include="..\..\apr-util\include\apr_ldap.hw">
-+ <Filter>Generated Files</Filter>
-+ </CustomBuild>
-+ <CustomBuild Include="..\..\apr-util\include\apu.hw">
-+ <Filter>Generated Files</Filter>
-+ </CustomBuild>
-+ <CustomBuild Include="..\..\apr-util\include\private\apu_config.hw">
-+ <Filter>Generated Files</Filter>
-+ </CustomBuild>
-+ <CustomBuild Include="..\..\apr-util\include\private\apu_select_dbm.hw">
-+ <Filter>Generated Files</Filter>
-+ </CustomBuild>
-+ <CustomBuild Include="..\..\apr-util\include\apu_want.hw">
-+ <Filter>Generated Files</Filter>
-+ </CustomBuild>
-+ </ItemGroup>
- </Project>
+ <ItemGroup>\r
+ <ClInclude Include="..\..\apr-util\include\apr_anylock.h">\r
+ <Filter>Public Header Files</Filter>\r
+diff --git a/libs/win32/xmlrpc-c/abyss.2008.vcproj b/libs/win32/xmlrpc-c/abyss.2008.vcproj
+new file mode 100644
+index 0000000..4ade18c
+--- /dev/null
++++ b/libs/win32/xmlrpc-c/abyss.2008.vcproj
+@@ -0,0 +1,410 @@
++<?xml version="1.0" encoding="Windows-1252"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9.00"\r
++ Name="abyss"\r
++ ProjectGUID="{A4D67895-E709-40C7-82B6-DE1D12DDDE04}"\r
++ RootNamespace="abyss"\r
++ TargetFrameworkVersion="131072"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory=".\Debug\abyss"\r
++ IntermediateDirectory=".\Debug\abyss"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="..\,..\include,..\lib\util\include,."\r
++ PreprocessorDefinitions="WIN32;_DEBUG;_LIB;ABYSS_WIN32;_THREAD"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile=".\Debug\abyss/abyss.pch"\r
++ AssemblerListingLocation=".\Debug\abyss/"\r
++ ObjectFile=".\Debug\abyss/"\r
++ ProgramDataBaseFileName=".\Debug\abyss/"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\abyssD.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Debug\abyss/abyss.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="..\,..\include,..\lib\util\include,."\r
++ PreprocessorDefinitions="WIN32;_DEBUG;_LIB;ABYSS_WIN32;_THREAD"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile=".\Debug\abyss/abyss.pch"\r
++ ObjectFile="$(IntDir)\Abyss\"\r
++ ProgramDataBaseFileName="$(IntDir)\Abyss\vc90.pdb"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\$(PlatformName)\$(ConfigurationName)\abyssD.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Debug\abyss/abyss.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory=".\Release\Abyss"\r
++ IntermediateDirectory=".\Release\Abyss"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="..\,..\include,..\lib\util\include,."\r
++ PreprocessorDefinitions="WIN32;NDEBUG;_LIB;ABYSS_WIN32;_THREAD"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile=".\Release\Abyss/abyss.pch"\r
++ AssemblerListingLocation=".\Release\Abyss/"\r
++ ObjectFile=".\Release\Abyss/"\r
++ ProgramDataBaseFileName=".\Release\Abyss/"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\abyss.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Release\Abyss/abyss.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="..\,..\include,..\lib\util\include,."\r
++ PreprocessorDefinitions="WIN32;NDEBUG;_LIB;ABYSS_WIN32;_THREAD"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile=".\Release\Abyss/abyss.pch"\r
++ ObjectFile="$(IntDir)\Abyss\"\r
++ ProgramDataBaseFileName="$(IntDir)\Abyss\vc90.pdb"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\$(PlatformName)\$(ConfigurationName)\abyss.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Release\Abyss/abyss.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
++ >\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\channel.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\chanswitch.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\conf.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\conn.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\data.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\date.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\file.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\handler.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\http.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\init.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\response.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\server.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\session.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\socket.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\socket_win.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\thread_windows.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\token.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\abyss\src\trace.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/win32/xmlrpc-c/abyss.2010.vcxproj b/libs/win32/xmlrpc-c/abyss.2010.vcxproj
+new file mode 100644
+index 0000000..e35b99f
+--- /dev/null
++++ b/libs/win32/xmlrpc-c/abyss.2010.vcxproj
+@@ -0,0 +1,197 @@
++<?xml version="1.0" encoding="utf-8"?>\r
++<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
++ <ItemGroup Label="ProjectConfigurations">\r
++ <ProjectConfiguration Include="Debug|Win32">\r
++ <Configuration>Debug</Configuration>\r
++ <Platform>Win32</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Debug|x64">\r
++ <Configuration>Debug</Configuration>\r
++ <Platform>x64</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Release|Win32">\r
++ <Configuration>Release</Configuration>\r
++ <Platform>Win32</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Release|x64">\r
++ <Configuration>Release</Configuration>\r
++ <Platform>x64</Platform>\r
++ </ProjectConfiguration>\r
++ </ItemGroup>\r
++ <PropertyGroup Label="Globals">\r
++ <ProjectName>abyss</ProjectName>\r
++ <ProjectGuid>{D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}</ProjectGuid>\r
++ <RootNamespace>abyss</RootNamespace>\r
++ </PropertyGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
++ <ImportGroup Label="ExtensionSettings">\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <PropertyGroup Label="UserMacros" />\r
++ <PropertyGroup>\r
++ <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(PlatformName)\abyss\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(PlatformName)\abyss\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(PlatformName)\abyss\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(PlatformName)\abyss\$(Configuration)\</IntDir>\r
++ </PropertyGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
++ <ClCompile>\r
++ <Optimization>Disabled</Optimization>\r
++ <AdditionalIncludeDirectories>..\;..\include;..\lib\util\include;.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;ABYSS_WIN32;_THREAD;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <MinimalRebuild>true</MinimalRebuild>\r
++ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
++ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Bscmake>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
++ <Midl>\r
++ <TargetEnvironment>X64</TargetEnvironment>\r
++ </Midl>\r
++ <ClCompile>\r
++ <Optimization>Disabled</Optimization>\r
++ <AdditionalIncludeDirectories>..\;..\include;..\lib\util\include;.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;ABYSS_WIN32;_THREAD;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <MinimalRebuild>true</MinimalRebuild>\r
++ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
++ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Bscmake>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
++ <ClCompile>\r
++ <Optimization>MaxSpeed</Optimization>\r
++ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
++ <AdditionalIncludeDirectories>..\;..\include;..\lib\util\include;.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;ABYSS_WIN32;_THREAD;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <StringPooling>true</StringPooling>\r
++ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
++ <FunctionLevelLinking>true</FunctionLevelLinking>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Bscmake>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
++ <Midl>\r
++ <TargetEnvironment>X64</TargetEnvironment>\r
++ </Midl>\r
++ <ClCompile>\r
++ <Optimization>MaxSpeed</Optimization>\r
++ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
++ <AdditionalIncludeDirectories>..\;..\include;..\lib\util\include;.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;ABYSS_WIN32;_THREAD;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <StringPooling>true</StringPooling>\r
++ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
++ <FunctionLevelLinking>true</FunctionLevelLinking>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Bscmake>\r
++ </ItemDefinitionGroup>\r
++ <ItemGroup>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\channel.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\chanswitch.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\conf.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\conn.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\data.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\date.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\file.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\handler.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\http.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\init.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\response.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\server.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\session.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\socket.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\socket_win.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\thread_windows.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\token.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\trace.c" />\r
++ </ItemGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
++ <ImportGroup Label="ExtensionTargets">\r
++ </ImportGroup>\r
++</Project>
+\ No newline at end of file
+diff --git a/libs/win32/xmlrpc-c/abyss.2010.vcxproj.filters b/libs/win32/xmlrpc-c/abyss.2010.vcxproj.filters
+new file mode 100644
+index 0000000..f73f272
+--- /dev/null
++++ b/libs/win32/xmlrpc-c/abyss.2010.vcxproj.filters
+@@ -0,0 +1,69 @@
++<?xml version="1.0" encoding="utf-8"?>\r
++<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
++ <ItemGroup>\r
++ <Filter Include="Source Files">\r
++ <UniqueIdentifier>{8ac4971f-a9ba-4930-a7e3-b291ad24d6ca}</UniqueIdentifier>\r
++ <Extensions>cpp;c;cxx;rc;def;r;odl;idl;hpj;bat</Extensions>\r
++ </Filter>\r
++ <Filter Include="Header Files">\r
++ <UniqueIdentifier>{05489d43-6c6b-4bb8-95db-414e8137ee9e}</UniqueIdentifier>\r
++ <Extensions>h;hpp;hxx;hm;inl</Extensions>\r
++ </Filter>\r
++ </ItemGroup>\r
++ <ItemGroup>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\file.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\handler.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\http.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\init.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\server.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\session.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\socket.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\socket_win.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\thread_windows.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\token.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\trace.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\channel.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\chanswitch.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\conf.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\conn.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\data.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\date.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\abyss\src\response.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ </ItemGroup>\r
++</Project>
+\ No newline at end of file
+diff --git a/libs/win32/xmlrpc-c/gennmtab.2008.vcproj b/libs/win32/xmlrpc-c/gennmtab.2008.vcproj
+new file mode 100644
+index 0000000..a4a5b35
+--- /dev/null
++++ b/libs/win32/xmlrpc-c/gennmtab.2008.vcproj
+@@ -0,0 +1,404 @@
++<?xml version="1.0" encoding="Windows-1252"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9.00"\r
++ Name="gennmtab"\r
++ ProjectGUID="{2390F054-A7F1-4CB9-ACB0-F46EC6E77B5B}"\r
++ RootNamespace="gennmtab"\r
++ TargetFrameworkVersion="131072"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TypeLibraryName=".\Debug\gennmtab/gennmtab.tlb"\r
++ HeaderFileName=""\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="..;."\r
++ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"\r
++ MinimalRebuild="true"\r
++ RuntimeLibrary="1"\r
++ PrecompiledHeaderFile=".\Debug\gennmtab/gennmtab.pch"\r
++ AssemblerListingLocation=".\Debug\gennmtab/"\r
++ ObjectFile=".\Debug\gennmtab/"\r
++ ProgramDataBaseFileName=".\Debug\gennmtab/"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="2057"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ LinkLibraryDependencies="false"\r
++ LinkIncremental="2"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile=".\Debug\gennmtab/gennmtabD.pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Debug\gennmtab/gennmtab.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ Description="(D) Generating nametab.h ..."\r
++ CommandLine="$(OutDir)\$(ProjectName).exe > $(XMLRPCDir)lib\expat\xmltok\nametab.h"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ TypeLibraryName=".\Debug\gennmtab/gennmtab.tlb"\r
++ HeaderFileName=""\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="..;."\r
++ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"\r
++ MinimalRebuild="true"\r
++ RuntimeLibrary="1"\r
++ PrecompiledHeaderFile=".\Debug\gennmtab/gennmtab.pch"\r
++ AssemblerListingLocation=".\Debug\gennmtab/"\r
++ ObjectFile=".\Debug\gennmtab/"\r
++ ProgramDataBaseFileName=".\Debug\gennmtab/"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="2057"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ LinkLibraryDependencies="false"\r
++ LinkIncremental="2"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile=".\Debug\gennmtab/gennmtabD.pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Debug\gennmtab/gennmtab.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ Description="(D) Generating nametab.h ..."\r
++ CommandLine="$(OutDir)\$(ProjectName).exe > $(XMLRPCDir)lib\expat\xmltok\nametab.h"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TypeLibraryName=".\Release\gennmtab/gennmtab.tlb"\r
++ HeaderFileName=""\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"\r
++ StringPooling="true"\r
++ RuntimeLibrary="0"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile=".\Release\gennmtab/gennmtab.pch"\r
++ AssemblerListingLocation=".\Release\gennmtab/"\r
++ ObjectFile=".\Release\gennmtab/"\r
++ ProgramDataBaseFileName=".\Release\gennmtab/"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="2057"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ LinkLibraryDependencies="false"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile=".\Release\gennmtab/gennmtab.pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Release\gennmtab/gennmtab.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ Description="(R) Generating nametab.h ..."\r
++ CommandLine="$(OutDir)\$(ProjectName).exe > $(XMLRPCDir)lib\expat\xmltok\nametab.h"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ TypeLibraryName=".\Release\gennmtab/gennmtab.tlb"\r
++ HeaderFileName=""\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="..;."\r
++ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"\r
++ StringPooling="true"\r
++ RuntimeLibrary="0"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile=".\Release\gennmtab/gennmtab.pch"\r
++ AssemblerListingLocation=".\Release\gennmtab/"\r
++ ObjectFile=".\Release\gennmtab/"\r
++ ProgramDataBaseFileName=".\Release\gennmtab/"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="2057"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ LinkLibraryDependencies="false"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile=".\Release\gennmtab/gennmtab.pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Release\gennmtab/gennmtab.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ Description="(R) Generating nametab.h ..."\r
++ CommandLine="$(OutDir)\$(ProjectName).exe > $(XMLRPCDir)lib\expat\xmltok\nametab.h"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;for;f90"\r
++ >\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\expat\gennmtab\gennmtab.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl;fi;fd"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/win32/xmlrpc-c/gennmtab.2010.vcxproj b/libs/win32/xmlrpc-c/gennmtab.2010.vcxproj
+new file mode 100644
+index 0000000..cb99ac4
+--- /dev/null
++++ b/libs/win32/xmlrpc-c/gennmtab.2010.vcxproj
+@@ -0,0 +1,304 @@
++<?xml version="1.0" encoding="utf-8"?>\r
++<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
++ <ItemGroup Label="ProjectConfigurations">\r
++ <ProjectConfiguration Include="Debug|Win32">\r
++ <Configuration>Debug</Configuration>\r
++ <Platform>Win32</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Debug|x64">\r
++ <Configuration>Debug</Configuration>\r
++ <Platform>x64</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Release|Win32">\r
++ <Configuration>Release</Configuration>\r
++ <Platform>Win32</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Release|x64">\r
++ <Configuration>Release</Configuration>\r
++ <Platform>x64</Platform>\r
++ </ProjectConfiguration>\r
++ </ItemGroup>\r
++ <PropertyGroup Label="Globals">\r
++ <ProjectGuid>{BED7539C-0099-4A14-AD5D-30828F15A171}</ProjectGuid>\r
++ <ProjectName>gennmtab</ProjectName>\r
++ </PropertyGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
++ <ConfigurationType>Application</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
++ <ConfigurationType>Application</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
++ <ConfigurationType>Application</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
++ <ConfigurationType>Application</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ </PropertyGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
++ <ImportGroup Label="ExtensionSettings">\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <PropertyGroup Label="UserMacros" />\r
++ <PropertyGroup>\r
++ <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>\r
++ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(PlatformName)\$(Configuration)\</OutDir>\r
++ <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(PlatformName)\$(Configuration)\</OutDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(PlatformName)\gennmtab\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(PlatformName)\gennmtab\$(Configuration)\</IntDir>\r
++ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>\r
++ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>\r
++ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(PlatformName)\$(Configuration)\</OutDir>\r
++ <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(PlatformName)\$(Configuration)\</OutDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(PlatformName)\gennmtab\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(PlatformName)\gennmtab\$(Configuration)\</IntDir>\r
++ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>\r
++ <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>\r
++ <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>\r
++ <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>\r
++ <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />\r
++ <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />\r
++ <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />\r
++ <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />\r
++ <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>\r
++ <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>\r
++ <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />\r
++ <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />\r
++ <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />\r
++ <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />\r
++ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</PreBuildEventUseInBuild>\r
++ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</PreBuildEventUseInBuild>\r
++ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</PreBuildEventUseInBuild>\r
++ <PreBuildEventUseInBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</PreBuildEventUseInBuild>\r
++ <CustomBuildAfterTargets Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Clean</CustomBuildAfterTargets>\r
++ <CustomBuildAfterTargets Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Clean</CustomBuildAfterTargets>\r
++ <CustomBuildAfterTargets Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Clean</CustomBuildAfterTargets>\r
++ <CustomBuildAfterTargets Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Clean</CustomBuildAfterTargets>\r
++ </PropertyGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
++ <Midl>\r
++ <TypeLibraryName>.\Debug\gennmtab/gennmtab.tlb</TypeLibraryName>\r
++ <HeaderFileName>\r
++ </HeaderFileName>\r
++ </Midl>\r
++ <ClCompile>\r
++ <Optimization>Disabled</Optimization>\r
++ <AdditionalIncludeDirectories>..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <MinimalRebuild>true</MinimalRebuild>\r
++ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>\r
++ <AssemblerListingLocation>\r
++ </AssemblerListingLocation>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0809</Culture>\r
++ </ResourceCompile>\r
++ <Link>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <GenerateDebugInformation>true</GenerateDebugInformation>\r
++ <SubSystem>Console</SubSystem>\r
++ <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
++ <DataExecutionPrevention>\r
++ </DataExecutionPrevention>\r
++ <TargetMachine>MachineX86</TargetMachine>\r
++ </Link>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <OutputFile>.\Debug\gennmtab/gennmtab.bsc</OutputFile>\r
++ </Bscmake>\r
++ <PostBuildEvent>\r
++ <Message>Generating nametab.h ...</Message>\r
++ <Command>$(OutDir)$(TargetName) > $(XMLRPCDir)lib\expat\xmltok\nametab.h</Command>\r
++ </PostBuildEvent>\r
++ <PreBuildEvent>\r
++ <Command>\r
++ </Command>\r
++ </PreBuildEvent>\r
++ <CustomBuildStep>\r
++ <Command>del $(XMLRPCDir)lib\expat\xmltok\nametab.h</Command>\r
++ </CustomBuildStep>\r
++ <CustomBuildStep>\r
++ <Outputs>NoOutput</Outputs>\r
++ </CustomBuildStep>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
++ <Midl>\r
++ <TypeLibraryName>.\Debug\gennmtab/gennmtab.tlb</TypeLibraryName>\r
++ <HeaderFileName>\r
++ </HeaderFileName>\r
++ </Midl>\r
++ <ClCompile>\r
++ <Optimization>Disabled</Optimization>\r
++ <AdditionalIncludeDirectories>..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>\r
++ <AssemblerListingLocation>\r
++ </AssemblerListingLocation>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0809</Culture>\r
++ </ResourceCompile>\r
++ <Link>\r
++ <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <GenerateDebugInformation>true</GenerateDebugInformation>\r
++ <SubSystem>Console</SubSystem>\r
++ <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
++ <DataExecutionPrevention>\r
++ </DataExecutionPrevention>\r
++ </Link>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <OutputFile>.\Debug\gennmtab/gennmtab.bsc</OutputFile>\r
++ </Bscmake>\r
++ <PostBuildEvent>\r
++ <Message>Generating nametab.h ...</Message>\r
++ <Command>$(OutDir)$(TargetName) > $(XMLRPCDir)lib\expat\xmltok\nametab.h</Command>\r
++ </PostBuildEvent>\r
++ <PreBuildEvent>\r
++ <Command>\r
++ </Command>\r
++ </PreBuildEvent>\r
++ <CustomBuildStep>\r
++ <Command>del $(XMLRPCDir)lib\expat\xmltok\nametab.h</Command>\r
++ </CustomBuildStep>\r
++ <CustomBuildStep>\r
++ <Outputs>NoOutput</Outputs>\r
++ </CustomBuildStep>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
++ <Midl>\r
++ <TypeLibraryName>.\Release\gennmtab/gennmtab.tlb</TypeLibraryName>\r
++ <HeaderFileName>\r
++ </HeaderFileName>\r
++ </Midl>\r
++ <ClCompile>\r
++ <Optimization>MaxSpeed</Optimization>\r
++ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
++ <AdditionalIncludeDirectories>..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <StringPooling>true</StringPooling>\r
++ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>\r
++ <FunctionLevelLinking>true</FunctionLevelLinking>\r
++ <AssemblerListingLocation>\r
++ </AssemblerListingLocation>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0809</Culture>\r
++ </ResourceCompile>\r
++ <Link>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <SubSystem>Console</SubSystem>\r
++ <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
++ <DataExecutionPrevention>\r
++ </DataExecutionPrevention>\r
++ <TargetMachine>MachineX86</TargetMachine>\r
++ </Link>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <OutputFile>.\Release\gennmtab/gennmtab.bsc</OutputFile>\r
++ </Bscmake>\r
++ <PostBuildEvent>\r
++ <Message>Generating nametab.h ...</Message>\r
++ <Command>$(OutDir)$(TargetName) > $(XMLRPCDir)lib\expat\xmltok\nametab.h</Command>\r
++ </PostBuildEvent>\r
++ <PreBuildEvent>\r
++ <Command>\r
++ </Command>\r
++ </PreBuildEvent>\r
++ <CustomBuildStep>\r
++ <Outputs>NoOutput</Outputs>\r
++ <Command>del $(XMLRPCDir)lib\expat\xmltok\nametab.h</Command>\r
++ </CustomBuildStep>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
++ <Midl>\r
++ <TypeLibraryName>.\Release\gennmtab/gennmtab.tlb</TypeLibraryName>\r
++ <HeaderFileName>\r
++ </HeaderFileName>\r
++ </Midl>\r
++ <ClCompile>\r
++ <Optimization>MaxSpeed</Optimization>\r
++ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
++ <AdditionalIncludeDirectories>..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <StringPooling>true</StringPooling>\r
++ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>\r
++ <FunctionLevelLinking>true</FunctionLevelLinking>\r
++ <AssemblerListingLocation>\r
++ </AssemblerListingLocation>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0809</Culture>\r
++ </ResourceCompile>\r
++ <Link>\r
++ <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <SubSystem>Console</SubSystem>\r
++ <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
++ <DataExecutionPrevention>\r
++ </DataExecutionPrevention>\r
++ </Link>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <OutputFile>.\Release\gennmtab/gennmtab.bsc</OutputFile>\r
++ </Bscmake>\r
++ <PostBuildEvent>\r
++ <Message>Generating nametab.h ...</Message>\r
++ <Command>$(OutDir)$(TargetName) > $(XMLRPCDir)lib\expat\xmltok\nametab.h</Command>\r
++ </PostBuildEvent>\r
++ <PreBuildEvent>\r
++ <Command>\r
++ </Command>\r
++ </PreBuildEvent>\r
++ <CustomBuildStep>\r
++ <Command>del $(XMLRPCDir)lib\expat\xmltok\nametab.h</Command>\r
++ </CustomBuildStep>\r
++ <CustomBuildStep>\r
++ <Outputs>NoOutput</Outputs>\r
++ </CustomBuildStep>\r
++ </ItemDefinitionGroup>\r
++ <ItemGroup>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\expat\gennmtab\gennmtab.c" />\r
++ </ItemGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
++ <ImportGroup Label="ExtensionTargets">\r
++ </ImportGroup>\r
++</Project>
+\ No newline at end of file
+diff --git a/libs/win32/xmlrpc-c/xmlparse.2008.vcproj b/libs/win32/xmlrpc-c/xmlparse.2008.vcproj
+new file mode 100644
+index 0000000..009c66a
+--- /dev/null
++++ b/libs/win32/xmlrpc-c/xmlparse.2008.vcproj
+@@ -0,0 +1,394 @@
++<?xml version="1.0" encoding="Windows-1252"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9.00"\r
++ Name="xmlparse"\r
++ ProjectGUID="{E5A9BCDA-B82D-4B08-B23E-9A782E367888}"\r
++ RootNamespace="xmlparse"\r
++ TargetFrameworkVersion="131072"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops;..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ CommandLine="if not exist "$(XMLRPCDir)version.h" (
pushd $(XMLRPCDir)Windows
"ConfigureWin32.bat"
popd
)
"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ CommandLine=""\r
++ Outputs=""\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories=""$(XMLRPCDir)lib\expat\xmltok";"$(XMLRPCDir)lib\expat\xmlwf""\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;XML_DTD;_LIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="0"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile=".\Release\xmlparse/xmlparse.pch"\r
++ AssemblerListingLocation=".\Release\xmlparse/"\r
++ ObjectFile=".\Release\xmlparse/"\r
++ ProgramDataBaseFileName=".\Release\xmlparse/"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\xmlparse.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Release\xmlparse/xmlparse.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops;..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ CommandLine="if not exist "$(XMLRPCDir)version.h" (
pushd $(XMLRPCDir)Windows
"ConfigureWin32.bat"
popd
)
"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ CommandLine=""\r
++ Outputs=""\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories=""$(XMLRPCDir)lib\expat\xmltok";"$(XMLRPCDir)lib\expat\xmlwf""\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;XML_DTD;_LIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="0"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile=".\Release\xmlparse/xmlparse.pch"\r
++ ObjectFile="$(IntDir)\xmlparse\"\r
++ ProgramDataBaseFileName="$(IntDir)\xmlparse\vc90.pdb"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\$(PlatformName)\$(ConfigurationName)\xmlparse.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Release\xmlparse/xmlparse.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops;..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ CommandLine="if not exist "$(XMLRPCDir)version.h" (
pushd $(XMLRPCDir)Windows
"ConfigureWin32.bat"
popd
)
"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ CommandLine=""\r
++ Outputs=""\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories=""$(XMLRPCDir)lib\expat\xmltok";"$(XMLRPCDir)lib\expat\xmlwf""\r
++ PreprocessorDefinitions="WIN32;_WINDOWS;XML_DTD;_LIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile=".\Debug\xmlparse/xmlparse.pch"\r
++ AssemblerListingLocation=".\Debug\xmlparse/"\r
++ ObjectFile=".\Debug\xmlparse/"\r
++ ProgramDataBaseFileName=".\Debug\xmlparse/"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\xmlparseD.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Debug\xmlparse/xmlparse.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops;..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ CommandLine="if not exist "$(XMLRPCDir)version.h" (
pushd $(XMLRPCDir)Windows
"ConfigureWin32.bat"
popd
)
"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ CommandLine=""\r
++ Outputs=""\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories=""$(XMLRPCDir)lib\expat\xmltok";"$(XMLRPCDir)lib\expat\xmlwf""\r
++ PreprocessorDefinitions="WIN32;_WINDOWS;XML_DTD;_LIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile=".\Debug\xmlparse/xmlparse.pch"\r
++ ObjectFile="$(IntDir)\xmlparse\"\r
++ ProgramDataBaseFileName="$(IntDir)\xmlparse\vc90.pdb"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\$(PlatformName)\$(ConfigurationName)\xmlparseD.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Debug\xmlparse/xmlparse.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;for;f90"\r
++ >\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\expat\xmlparse\xmlparse.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl;fi;fd"\r
++ >\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\expat\xmlparse\xmlparse.h"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/win32/xmlrpc-c/xmlparse.2010.vcxproj b/libs/win32/xmlrpc-c/xmlparse.2010.vcxproj
+new file mode 100644
+index 0000000..4d1b9ce
+--- /dev/null
++++ b/libs/win32/xmlrpc-c/xmlparse.2010.vcxproj
+@@ -0,0 +1,254 @@
++<?xml version="1.0" encoding="utf-8"?>\r
++<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
++ <ItemGroup Label="ProjectConfigurations">\r
++ <ProjectConfiguration Include="Debug|Win32">\r
++ <Configuration>Debug</Configuration>\r
++ <Platform>Win32</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Debug|x64">\r
++ <Configuration>Debug</Configuration>\r
++ <Platform>x64</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Release|Win32">\r
++ <Configuration>Release</Configuration>\r
++ <Platform>Win32</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Release|x64">\r
++ <Configuration>Release</Configuration>\r
++ <Platform>x64</Platform>\r
++ </ProjectConfiguration>\r
++ </ItemGroup>\r
++ <PropertyGroup Label="Globals">\r
++ <ProjectName>xmlparse</ProjectName>\r
++ <ProjectGuid>{0D108721-EAE8-4BAF-8102-D8960EC93647}</ProjectGuid>\r
++ <RootNamespace>xmlparse</RootNamespace>\r
++ </PropertyGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
++ <ImportGroup Label="ExtensionSettings">\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <PropertyGroup Label="UserMacros" />\r
++ <PropertyGroup>\r
++ <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(PlatformName)\xmlparse\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(PlatformName)\xmlparse\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(PlatformName)\xmlparse\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(PlatformName)\xmlparse\$(Configuration)\</IntDir>\r
++ <ExtensionsToDeleteOnClean Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)..\version.h;$(ExtensionsToDeleteOnClean)</ExtensionsToDeleteOnClean>\r
++ <CustomBuildAfterTargets Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Clean</CustomBuildAfterTargets>\r
++ <CustomBuildAfterTargets Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Clean</CustomBuildAfterTargets>\r
++ <CustomBuildAfterTargets Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Clean</CustomBuildAfterTargets>\r
++ <CustomBuildAfterTargets Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Clean</CustomBuildAfterTargets>\r
++ </PropertyGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
++ <ClCompile>\r
++ <Optimization>MaxSpeed</Optimization>\r
++ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
++ <AdditionalIncludeDirectories>$(XMLRPCDir)lib\expat\xmltok;$(XMLRPCDir)lib\expat\xmlwf;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;XML_DTD;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <StringPooling>true</StringPooling>\r
++ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>\r
++ <FunctionLevelLinking>true</FunctionLevelLinking>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Bscmake>\r
++ <PreBuildEvent>\r
++ <Command>if not exist "$(XMLRPCDir)version.h" (\r
++pushd $(XMLRPCDir)Windows\r
++"ConfigureWin32.bat"\r
++popd\r
++)\r
++ </Command>\r
++ </PreBuildEvent>\r
++ <CustomBuildStep>\r
++ <Command>pushd $(XMLRPCDir)Windows\r
++"$(XMLRPCDir)Windows\CleanWin32.bat"\r
++popd\r
++</Command>\r
++ <Outputs>NoOutput</Outputs>\r
++ </CustomBuildStep>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
++ <Midl>\r
++ <TargetEnvironment>X64</TargetEnvironment>\r
++ </Midl>\r
++ <ClCompile>\r
++ <Optimization>MaxSpeed</Optimization>\r
++ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
++ <AdditionalIncludeDirectories>$(XMLRPCDir)lib\expat\xmltok;$(XMLRPCDir)lib\expat\xmlwf;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;XML_DTD;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <StringPooling>true</StringPooling>\r
++ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>\r
++ <FunctionLevelLinking>true</FunctionLevelLinking>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Bscmake>\r
++ <PreBuildEvent>\r
++ <Command>if not exist "$(XMLRPCDir)version.h" (\r
++pushd $(XMLRPCDir)Windows\r
++"ConfigureWin32.bat"\r
++popd\r
++) \r
++ </Command>\r
++ </PreBuildEvent>\r
++ <CustomBuildStep>\r
++ <Command>pushd $(XMLRPCDir)Windows\r
++"$(XMLRPCDir)Windows\CleanWin32.bat"\r
++popd\r
++</Command>\r
++ <Outputs>NoOutput</Outputs>\r
++ </CustomBuildStep>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
++ <ClCompile>\r
++ <Optimization>Disabled</Optimization>\r
++ <AdditionalIncludeDirectories>$(XMLRPCDir)lib\expat\xmltok;$(XMLRPCDir)lib\expat\xmlwf;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>WIN32;_WINDOWS;XML_DTD;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <MinimalRebuild>true</MinimalRebuild>\r
++ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
++ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Bscmake>\r
++ <PreBuildEvent>\r
++ <Command>if not exist "$(XMLRPCDir)version.h" (\r
++pushd $(XMLRPCDir)Windows\r
++"ConfigureWin32.bat"\r
++popd\r
++) \r
++ </Command>\r
++ </PreBuildEvent>\r
++ <CustomBuildStep>\r
++ <Command>pushd $(XMLRPCDir)Windows\r
++"$(XMLRPCDir)Windows\CleanWin32.bat"\r
++popd\r
++</Command>\r
++ <Outputs>NoOutput</Outputs>\r
++ </CustomBuildStep>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
++ <Midl>\r
++ <TargetEnvironment>X64</TargetEnvironment>\r
++ </Midl>\r
++ <ClCompile>\r
++ <Optimization>Disabled</Optimization>\r
++ <AdditionalIncludeDirectories>$(XMLRPCDir)lib\expat\xmltok;$(XMLRPCDir)lib\expat\xmlwf;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>WIN32;_WINDOWS;XML_DTD;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <MinimalRebuild>true</MinimalRebuild>\r
++ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
++ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Bscmake>\r
++ <PreBuildEvent>\r
++ <Command>if not exist "$(XMLRPCDir)version.h" (\r
++pushd $(XMLRPCDir)Windows\r
++"ConfigureWin32.bat"\r
++popd\r
++) \r
++ </Command>\r
++ </PreBuildEvent>\r
++ <CustomBuildStep>\r
++ <Command>pushd $(XMLRPCDir)Windows\r
++"$(XMLRPCDir)Windows\CleanWin32.bat"\r
++popd\r
++</Command>\r
++ <Outputs>NoOutput</Outputs>\r
++ </CustomBuildStep>\r
++ </ItemDefinitionGroup>\r
++ <ItemGroup>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\expat\xmlparse\xmlparse.c" />\r
++ </ItemGroup>\r
++ <ItemGroup>\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmlparse\xmlparse.h" />\r
++ </ItemGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
++ <ImportGroup Label="ExtensionTargets">\r
++ </ImportGroup>\r
++</Project>
+\ No newline at end of file
+diff --git a/libs/win32/xmlrpc-c/xmlrpc.2008.vcproj b/libs/win32/xmlrpc-c/xmlrpc.2008.vcproj
+new file mode 100644
+index 0000000..2de82d7
+--- /dev/null
++++ b/libs/win32/xmlrpc-c/xmlrpc.2008.vcproj
+@@ -0,0 +1,490 @@
++<?xml version="1.0" encoding="Windows-1252"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9.00"\r
++ Name="xmlrpc"\r
++ ProjectGUID="{510BDAA8-C04D-47DB-8482-E6AF380D3E07}"\r
++ RootNamespace="xmlrpc"\r
++ TargetFrameworkVersion="131072"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory=".\Debug\xmlrpc"\r
++ IntermediateDirectory=".\Debug\xmlrpc"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops;..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories=""$(XMLRPCDir)lib\expat\xmlparse""\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile=".\Debug\xmlrpc/xmlrpc.pch"\r
++ AssemblerListingLocation=".\Debug\xmlrpc/"\r
++ ObjectFile=".\Debug\xmlrpc/"\r
++ ProgramDataBaseFileName=".\Debug\xmlrpc/"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\xmlrpcD.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Debug\xmlrpc/xmlrpc.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops;..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories=""$(XMLRPCDir)lib\expat\xmlparse""\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile=".\Debug\xmlrpc/xmlrpc.pch"\r
++ ObjectFile="$(IntDir)\xmlrpc\"\r
++ ProgramDataBaseFileName="$(IntDir)\xmlrpc\vc90.pdb"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\$(PlatformName)\$(ConfigurationName)\xmlrpcD.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Debug\xmlrpc/xmlrpc.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory=".\Release\xmlrpc"\r
++ IntermediateDirectory=".\Release\xmlrpc"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops;..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories=""$(XMLRPCDir)lib\expat\xmlparse""\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile=".\Release\xmlrpc/xmlrpc.pch"\r
++ AssemblerListingLocation=".\Release\xmlrpc/"\r
++ ObjectFile=".\Release\xmlrpc/"\r
++ ProgramDataBaseFileName=".\Release\xmlrpc/"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\xmlrpc.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Release\xmlrpc/xmlrpc.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops;..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories=""$(XMLRPCDir)lib\expat\xmlparse""\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile=".\Release\xmlrpc/xmlrpc.pch"\r
++ ObjectFile="$(IntDir)\xmlrpc\"\r
++ ProgramDataBaseFileName="$(IntDir)\xmlrpc\vc90.pdb"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\$(PlatformName)\$(ConfigurationName)\xmlrpc.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Release\xmlrpc/xmlrpc.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc"\r
++ >\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\libutil\asprintf.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\libutil\base64.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\double.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\libutil\error.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\libutil\make_printable.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\libutil\memblock.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\method.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\parse_datetime.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\parse_value.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\util\pthreadx_win32.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\registry.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\resource.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\libutil\select.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\libutil\sleep.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\libutil\string_number.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\system_method.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\libutil\time.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\trace.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\libutil\utf8.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\version.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_array.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_authcookie.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_base64.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_build.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_client.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_client_global.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_data.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_datetime.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_decompose.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_expat.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_parse.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_serialize.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_server_abyss.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_server_cgi.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_server_info.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_string.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\src\xmlrpc_struct.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\wininet_transport\xmlrpc_wininet_transport.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/win32/xmlrpc-c/xmlrpc.2010.vcxproj b/libs/win32/xmlrpc-c/xmlrpc.2010.vcxproj
+new file mode 100644
+index 0000000..9902363
+--- /dev/null
++++ b/libs/win32/xmlrpc-c/xmlrpc.2010.vcxproj
+@@ -0,0 +1,240 @@
++<?xml version="1.0" encoding="utf-8"?>\r
++<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
++ <ItemGroup Label="ProjectConfigurations">\r
++ <ProjectConfiguration Include="Debug|Win32">\r
++ <Configuration>Debug</Configuration>\r
++ <Platform>Win32</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Debug|x64">\r
++ <Configuration>Debug</Configuration>\r
++ <Platform>x64</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Release|Win32">\r
++ <Configuration>Release</Configuration>\r
++ <Platform>Win32</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Release|x64">\r
++ <Configuration>Release</Configuration>\r
++ <Platform>x64</Platform>\r
++ </ProjectConfiguration>\r
++ </ItemGroup>\r
++ <PropertyGroup Label="Globals">\r
++ <ProjectName>xmlrpc</ProjectName>\r
++ <ProjectGuid>{CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}</ProjectGuid>\r
++ <RootNamespace>xmlrpc</RootNamespace>\r
++ </PropertyGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
++ <ImportGroup Label="ExtensionSettings">\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <PropertyGroup Label="UserMacros" />\r
++ <PropertyGroup>\r
++ <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(PlatformName)\xmlrpc\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(PlatformName)\xmlrpc\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(PlatformName)\xmlrpc\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(PlatformName)\xmlrpc\$(Configuration)\</IntDir>\r
++ <CustomBuildBeforeTargets Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
++ </CustomBuildBeforeTargets>\r
++ </PropertyGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
++ <ClCompile>\r
++ <Optimization>Disabled</Optimization>\r
++ <AdditionalIncludeDirectories>$(XMLRPCDir)lib\expat\xmlparse;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <MinimalRebuild>true</MinimalRebuild>\r
++ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
++ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Bscmake>\r
++ <CustomBuildStep>\r
++ <Outputs>\r
++ </Outputs>\r
++ </CustomBuildStep>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
++ <Midl>\r
++ <TargetEnvironment>X64</TargetEnvironment>\r
++ </Midl>\r
++ <ClCompile>\r
++ <Optimization>Disabled</Optimization>\r
++ <AdditionalIncludeDirectories>$(XMLRPCDir)lib\expat\xmlparse;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <MinimalRebuild>true</MinimalRebuild>\r
++ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
++ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <OutputFile>.\Debug\xmlrpc/xmlrpc.bsc</OutputFile>\r
++ </Bscmake>\r
++ <CustomBuildStep>\r
++ <Outputs>\r
++ </Outputs>\r
++ </CustomBuildStep>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
++ <ClCompile>\r
++ <Optimization>MaxSpeed</Optimization>\r
++ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
++ <AdditionalIncludeDirectories>$(XMLRPCDir)lib\expat\xmlparse;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <StringPooling>true</StringPooling>\r
++ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
++ <FunctionLevelLinking>true</FunctionLevelLinking>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Bscmake>\r
++ <CustomBuildStep>\r
++ <Outputs>\r
++ </Outputs>\r
++ </CustomBuildStep>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
++ <Midl>\r
++ <TargetEnvironment>X64</TargetEnvironment>\r
++ </Midl>\r
++ <ClCompile>\r
++ <Optimization>MaxSpeed</Optimization>\r
++ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
++ <AdditionalIncludeDirectories>$(XMLRPCDir)lib\expat\xmlparse;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <StringPooling>true</StringPooling>\r
++ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
++ <FunctionLevelLinking>true</FunctionLevelLinking>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Bscmake>\r
++ <CustomBuildStep>\r
++ <Command>\r
++ </Command>\r
++ <Outputs>\r
++ </Outputs>\r
++ <Message>\r
++ </Message>\r
++ </CustomBuildStep>\r
++ </ItemDefinitionGroup>\r
++ <ItemGroup>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\asprintf.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\base64.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\error.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\make_printable.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\memblock.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\select.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\sleep.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\string_number.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\time.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\utf8.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\util\pthreadx_win32.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\wininet_transport\xmlrpc_wininet_transport.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\double.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\method.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\parse_datetime.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\parse_value.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\registry.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\resource.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\system_method.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\trace.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\version.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_array.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_authcookie.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_base64.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_build.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_client.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_client_global.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_data.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_datetime.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_decompose.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_expat.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_parse.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_serialize.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_server_abyss.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_server_cgi.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_server_info.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_string.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_struct.c" />\r
++ </ItemGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
++ <ImportGroup Label="ExtensionTargets">\r
++ </ImportGroup>\r
++</Project>
+\ No newline at end of file
+diff --git a/libs/win32/xmlrpc-c/xmlrpc.2010.vcxproj.filters b/libs/win32/xmlrpc-c/xmlrpc.2010.vcxproj.filters
+new file mode 100644
+index 0000000..aa044ff
+--- /dev/null
++++ b/libs/win32/xmlrpc-c/xmlrpc.2010.vcxproj.filters
+@@ -0,0 +1,125 @@
++<?xml version="1.0" encoding="utf-8"?>\r
++<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
++ <ItemGroup>\r
++ <Filter Include="Source Files">\r
++ <UniqueIdentifier>{7ca2b8b9-bf59-4407-aedf-588e548fe34a}</UniqueIdentifier>\r
++ <Extensions>cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc</Extensions>\r
++ </Filter>\r
++ </ItemGroup>\r
++ <ItemGroup>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\wininet_transport\xmlrpc_wininet_transport.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\string_number.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\time.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\utf8.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\asprintf.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\base64.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\error.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\make_printable.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\memblock.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\select.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\libutil\sleep.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\double.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\method.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\registry.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\trace.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\parse_datetime.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\parse_value.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\util\pthreadx_win32.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\resource.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\system_method.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\version.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_datetime.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_decompose.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_expat.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_parse.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_serialize.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_server_abyss.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_server_cgi.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_server_info.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_string.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_struct.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_array.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_authcookie.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_base64.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_build.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_client.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_client_global.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\src\xmlrpc_data.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ </ItemGroup>\r
++</Project>
+\ No newline at end of file
+diff --git a/libs/win32/xmlrpc-c/xmltok.2008.vcproj b/libs/win32/xmlrpc-c/xmltok.2008.vcproj
+new file mode 100644
+index 0000000..71be879
+--- /dev/null
++++ b/libs/win32/xmlrpc-c/xmltok.2008.vcproj
+@@ -0,0 +1,378 @@
++<?xml version="1.0" encoding="Windows-1252"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9.00"\r
++ Name="xmltok"\r
++ ProjectGUID="{3CF7C0E0-07C2-473A-A1E4-2274AEEC1268}"\r
++ RootNamespace="xmltok"\r
++ TargetFrameworkVersion="131072"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory=".\Debug\xmltok"\r
++ IntermediateDirectory=".\Debug\xmltok"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops;..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;XML_DTD;XML_NS;_LIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile=".\Debug\xmltok/xmltok.pch"\r
++ AssemblerListingLocation=".\Debug\xmltok/"\r
++ ObjectFile=".\Debug\xmltok/"\r
++ ProgramDataBaseFileName=".\Debug\xmltok/"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\xmltokD.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Debug\xmltok/xmltok.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops;..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;XML_DTD;XML_NS;_LIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile=".\Debug\xmltok/xmltok.pch"\r
++ ObjectFile="$(IntDir)\xmltok\"\r
++ ProgramDataBaseFileName="$(IntDir)\xmltok\vc90.pdb"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\$(PlatformName)\$(ConfigurationName)\xmltokD.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Debug\xmltok/xmltok.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory=".\Release\xmltok"\r
++ IntermediateDirectory=".\Release\xmltok"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops;..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions="NDEBUG;XML_NS;WIN32;_WINDOWS;XML_DTD;_LIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="0"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile=".\Release\xmltok/xmltok.pch"\r
++ AssemblerListingLocation=".\Release\xmltok/"\r
++ ObjectFile=".\Release\xmltok/"\r
++ ProgramDataBaseFileName=".\Release\xmltok/"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\xmltok.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Release\xmltok/xmltok.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
++ ConfigurationType="4"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops;..\..\..\w32\xmlrpc.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions="NDEBUG;XML_NS;WIN32;_WINDOWS;XML_DTD;_LIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="0"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile=".\Release\xmltok/xmltok.pch"\r
++ ObjectFile="$(IntDir)\xmltok\"\r
++ ProgramDataBaseFileName="$(IntDir)\xmltok\vc90.pdb"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLibrarianTool"\r
++ OutputFile="..\lib\$(PlatformName)\$(ConfigurationName)\xmltok.lib"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile=".\Release\xmltok/xmltok.bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;for;f90"\r
++ >\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\expat\xmltok\xmlrole.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\xmlrpc-c\lib\expat\xmltok\xmltok.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl;fi;fd"\r
++ >\r
++ <File\r
++ RelativePath="..\lib\expat\xmltok\asciitab.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\lib\expat\xmltok\iasciitab.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\lib\expat\xmltok\latin1tab.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\lib\expat\xmltok\nametab.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\lib\expat\xmltok\utf8tab.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\lib\expat\xmltok\xmldef.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\lib\expat\xmltok\xmlrole.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\lib\expat\xmltok\xmltok.h"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/win32/xmlrpc-c/xmltok.2010.vcxproj b/libs/win32/xmlrpc-c/xmltok.2010.vcxproj
+new file mode 100644
+index 0000000..119ca26
+--- /dev/null
++++ b/libs/win32/xmlrpc-c/xmltok.2010.vcxproj
+@@ -0,0 +1,199 @@
++<?xml version="1.0" encoding="utf-8"?>\r
++<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
++ <ItemGroup Label="ProjectConfigurations">\r
++ <ProjectConfiguration Include="Debug|Win32">\r
++ <Configuration>Debug</Configuration>\r
++ <Platform>Win32</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Debug|x64">\r
++ <Configuration>Debug</Configuration>\r
++ <Platform>x64</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Release|Win32">\r
++ <Configuration>Release</Configuration>\r
++ <Platform>Win32</Platform>\r
++ </ProjectConfiguration>\r
++ <ProjectConfiguration Include="Release|x64">\r
++ <Configuration>Release</Configuration>\r
++ <Platform>x64</Platform>\r
++ </ProjectConfiguration>\r
++ </ItemGroup>\r
++ <PropertyGroup Label="Globals">\r
++ <ProjectName>xmltok</ProjectName>\r
++ <ProjectGuid>{B535402E-38D2-4D54-8360-423ACBD17192}</ProjectGuid>\r
++ <RootNamespace>xmltok</RootNamespace>\r
++ </PropertyGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
++ <ConfigurationType>StaticLibrary</ConfigurationType>\r
++ <UseOfMfc>false</UseOfMfc>\r
++ <CharacterSet>MultiByte</CharacterSet>\r
++ </PropertyGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
++ <ImportGroup Label="ExtensionSettings">\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">\r
++ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
++ <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />\r
++ <Import Project="..\..\..\w32\extlib.props" />\r
++ <Import Project="..\..\..\w32\xmlrpc.props" />\r
++ </ImportGroup>\r
++ <PropertyGroup Label="UserMacros" />\r
++ <PropertyGroup>\r
++ <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(PlatformName)\xmltok\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(PlatformName)\xmltok\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(PlatformName)\xmltok\$(Configuration)\</IntDir>\r
++ <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(PlatformName)\xmltok\$(Configuration)\</IntDir>\r
++ </PropertyGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
++ <ClCompile>\r
++ <Optimization>Disabled</Optimization>\r
++ <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;XML_DTD;XML_NS;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <MinimalRebuild>true</MinimalRebuild>\r
++ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
++ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <OutputFile>.\Debug\xmltok/xmltok.bsc</OutputFile>\r
++ </Bscmake>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
++ <Midl>\r
++ <TargetEnvironment>X64</TargetEnvironment>\r
++ </Midl>\r
++ <ClCompile>\r
++ <Optimization>Disabled</Optimization>\r
++ <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;XML_DTD;XML_NS;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <MinimalRebuild>true</MinimalRebuild>\r
++ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
++ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <OutputFile>.\Debug\xmltok/xmltok.bsc</OutputFile>\r
++ </Bscmake>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
++ <ClCompile>\r
++ <Optimization>MaxSpeed</Optimization>\r
++ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
++ <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>NDEBUG;XML_NS;WIN32;_WINDOWS;XML_DTD;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <StringPooling>true</StringPooling>\r
++ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>\r
++ <FunctionLevelLinking>true</FunctionLevelLinking>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <OutputFile>.\Release\xmltok/xmltok.bsc</OutputFile>\r
++ </Bscmake>\r
++ </ItemDefinitionGroup>\r
++ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
++ <Midl>\r
++ <TargetEnvironment>X64</TargetEnvironment>\r
++ </Midl>\r
++ <ClCompile>\r
++ <Optimization>MaxSpeed</Optimization>\r
++ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
++ <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ <PreprocessorDefinitions>NDEBUG;XML_NS;WIN32;_WINDOWS;XML_DTD;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <StringPooling>true</StringPooling>\r
++ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>\r
++ <FunctionLevelLinking>true</FunctionLevelLinking>\r
++ <WarningLevel>Level3</WarningLevel>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </ClCompile>\r
++ <ResourceCompile>\r
++ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
++ <Culture>0x0409</Culture>\r
++ </ResourceCompile>\r
++ <Lib>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ </Lib>\r
++ <Bscmake>\r
++ <SuppressStartupBanner>true</SuppressStartupBanner>\r
++ <OutputFile>.\Release\xmltok/xmltok.bsc</OutputFile>\r
++ </Bscmake>\r
++ </ItemDefinitionGroup>\r
++ <ItemGroup>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\expat\xmltok\xmlrole.c" />\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\expat\xmltok\xmltok.c" />\r
++ </ItemGroup>\r
++ <ItemGroup>\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\asciitab.h" />\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\iasciitab.h" />\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\latin1tab.h" />\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\utf8tab.h" />\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\xmldef.h" />\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\xmlrole.h" />\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\xmltok.h" />\r
++ <ClInclude Include="..\lib\expat\xmltok\nametab.h" />\r
++ </ItemGroup>\r
++ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
++ <ImportGroup Label="ExtensionTargets">\r
++ </ImportGroup>\r
++</Project>
+\ No newline at end of file
+diff --git a/libs/win32/xmlrpc-c/xmltok.2010.vcxproj.filters b/libs/win32/xmlrpc-c/xmltok.2010.vcxproj.filters
+new file mode 100644
+index 0000000..98d22a2
+--- /dev/null
++++ b/libs/win32/xmlrpc-c/xmltok.2010.vcxproj.filters
+@@ -0,0 +1,45 @@
++<?xml version="1.0" encoding="utf-8"?>\r
++<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
++ <ItemGroup>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\expat\xmltok\xmltok.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ <ClCompile Include="..\..\xmlrpc-c\lib\expat\xmltok\xmlrole.c">\r
++ <Filter>Source Files</Filter>\r
++ </ClCompile>\r
++ </ItemGroup>\r
++ <ItemGroup>\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\xmltok.h">\r
++ <Filter>Header Files</Filter>\r
++ </ClInclude>\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\xmlrole.h">\r
++ <Filter>Header Files</Filter>\r
++ </ClInclude>\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\xmldef.h">\r
++ <Filter>Header Files</Filter>\r
++ </ClInclude>\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\utf8tab.h">\r
++ <Filter>Header Files</Filter>\r
++ </ClInclude>\r
++ <ClInclude Include="..\lib\expat\xmltok\nametab.h">\r
++ <Filter>Header Files</Filter>\r
++ </ClInclude>\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\latin1tab.h">\r
++ <Filter>Header Files</Filter>\r
++ </ClInclude>\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\iasciitab.h">\r
++ <Filter>Header Files</Filter>\r
++ </ClInclude>\r
++ <ClInclude Include="..\..\xmlrpc-c\lib\expat\xmltok\asciitab.h">\r
++ <Filter>Header Files</Filter>\r
++ </ClInclude>\r
++ </ItemGroup>\r
++ <ItemGroup>\r
++ <Filter Include="Source Files">\r
++ <UniqueIdentifier>{e8ec3017-8580-49f6-b5b5-4ba1c66c9b58}</UniqueIdentifier>\r
++ </Filter>\r
++ <Filter Include="Header Files">\r
++ <UniqueIdentifier>{cf3bec2c-9e12-4a6c-8d1c-495721118adf}</UniqueIdentifier>\r
++ </Filter>\r
++ </ItemGroup>\r
++</Project>
\ No newline at end of file
diff --git a/libs/xmlrpc-c/.cvsignore b/libs/xmlrpc-c/.cvsignore
deleted file mode 100644
-LIBINST_DIR = @libdir@
-HEADERINST_DIR = @includedir@
-PROGRAMINST_DIR = @bindir@
+diff --git a/libs/xmlrpc-c/Makefile.depend b/libs/xmlrpc-c/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
diff --git a/libs/xmlrpc-c/Makefile.srcdir.in b/libs/xmlrpc-c/Makefile.srcdir.in
deleted file mode 100644
index d389df1..0000000
+
+:END
diff --git a/libs/xmlrpc-c/Windows/ReadMeWin32.txt b/libs/xmlrpc-c/Windows/ReadMeWin32.txt
-index 2da1575..c3d5d5d 100644
+index 2da1575..1178159 100644
--- a/libs/xmlrpc-c/Windows/ReadMeWin32.txt
+++ b/libs/xmlrpc-c/Windows/ReadMeWin32.txt
-@@ -1,64 +1,66 @@
--Build Instructions For XML-RPC For C/C++ On Windows\r
-----------------------------------------------------\r
--\r
+@@ -1,11 +1,13 @@
+ Build Instructions For XML-RPC For C/C++ On Windows\r
+ ---------------------------------------------------\r
+ \r
-Latest Windows work was done by\r
-\r
- Geoff McLane\r
- 19 October, 2007\r
- home: http://geoffair.net\r
--\r
--\r
--1. Run the batch file ConfigureWin32.bat, found in the Windows\r
--directory. This will copy four(4) headers to the appropriate folders.\r
--\r
--2. Load xmlrpc.dsw in MSVC[7,8] or later, and build the Release or Debug\r
--configurations. DLL configurations are not included, and may not compile.\r
--\r
--This build requires that you have a Microsoft SDK, or Plaform SDK\r
--installed, since among other things, it uses <http.h>, and\r
--HTTPAPI.LIB, from the SDK.\r
--\r
--Once built, the rpctest.exe, in the bin folder, should run with no errors,\r
--and the xmlrpc_sample_add_server.exe, using port 8080, and\r
--xmlrpc_sample_add_sync_client.exe should communicate ... proving 7+5 = 12 ;=))\r
--\r
--Have fun.\r
--\r
--PS: Several other batch files are included in the Windows folder ...\r
--\r
--delsln.bat - to delete all the MSVC7 and 8 solution file.\r
--\r
--diffcfg.bat - compare the headers in windows with the version used in\r
--the compile. Requires diff.exe to be in the path.\r
--\r
--updcfg.bat - copy the 3 manually maintained configuration files back\r
--to the Windows folder (for distribution).\r
--\r
--cleawin32.bat - deletes the headers used in the compile. That is does the\r
--opposite of ConfigureWin32.bat.\r
--\r
--cleanall.bat - to remove ALL the binary files created. Requires an xdelete\r
--program which will recursively delete an entire folder.\r
--\r
--\r
--There is some historical information in ReadMeOld.txt, which used to be\r
--the contents of this file. Some of it is still valid.\r
--\r
--\r
--Developing XML-RPC For C/C++ for Windows\r
------------------------------------------\r
--\r
--If you fix or enhance something in the Windows build system, please send\r
--your updates to the Xmlrpc-c maintainer to be included in future releases\r
--so others don't have to repeat your work.\r
--\r
--Output of a Subversion 'diff' is usually the best way to send updates,\r
--but you can also send complete files or just a description of the\r
--change if that is easier.\r
--\r
--For the project files, we distribute only MSVC6-compatible DSP and DSW\r
--files (which are, of course, usable as input to later versions of MSVC\r
--as well). That means if you need to modify something in the project\r
--files and you are not using MSVC6, you must edit the project files\r
--manually as text files. Modifying them via the IDE would simply\r
--generate new files in a format that cannot be used with older MSVC.\r
-+Build Instructions For XML-RPC For C/C++ On Windows
-+---------------------------------------------------
-+
-+-------------------------------------------------------------------------
-+These instructions are for static link libraries, using Microsoft Visual
-+Studio 7 and later. There are project files to create DLLs, using
-+Visual Studio 2008 or later, in the 'dll' subdirectory. People maintain
-+those project files separately from the rest of the build system, so it's
-+not uncommon for something to work with one but not the other.
-+-------------------------------------------------------------------------
-+
-+
-+1. Run the batch file ConfigureWin32.bat, found in the Windows
-+directory. This will copy four(4) headers to the appropriate folders.
-+
-+2. Load xmlrpc.dsw in MSVC[7,8] or later, and build the Release or Debug
-+configurations. DLL configurations are not included, and may not compile.
-+
-+This build requires that you have a Microsoft SDK, or Plaform SDK
-+installed, since among other things, it uses <http.h>, and
-+HTTPAPI.LIB, from the SDK.
-+
-+Once built, the rpctest.exe, in the bin folder, should run with no errors,
-+and the xmlrpc_sample_add_server.exe, using port 8080, and
-+xmlrpc_sample_add_sync_client.exe should communicate ... proving 7+5 = 12 ;=))
-+
-+Have fun.
-+
-+PS: Several other batch files are included in the Windows folder ...
-+
-+delsln.bat - to delete all the MSVC7 and 8 solution file.
-+
-+diffcfg.bat - compare the headers in windows with the version used in
-+the compile. Requires diff.exe to be in the path.
-+
-+updcfg.bat - copy the 3 manually maintained configuration files back
-+to the Windows folder (for distribution).
-+
-+cleawin32.bat - deletes the headers used in the compile. That is does the
-+opposite of ConfigureWin32.bat.
-+
-+cleanall.bat - to remove ALL the binary files created. Requires an xdelete
-+program which will recursively delete an entire folder.
-+
-+
-+There is some historical information in ReadMeOld.txt, which used to be
-+the contents of this file. Some of it is still valid.
-+
-+
-+Developing XML-RPC For C/C++ for Windows
-+----------------------------------------
-+
-+If you fix or enhance something in the Windows build system, please send
-+your updates to the Xmlrpc-c maintainer to be included in future releases
-+so others don't have to repeat your work.
-+
-+Output of a Subversion 'diff' is usually the best way to send updates,
-+but you can also send complete files or just a description of the
-+change if that is easier.
-+
-+For the project files, we distribute only MSVC6-compatible DSP and DSW
-+files (which are, of course, usable as input to later versions of MSVC
-+as well). That means if you need to modify something in the project
-+files and you are not using MSVC6, you must edit the project files
-+manually as text files. Modifying them via the IDE would simply
-+generate new files in a format that cannot be used with older MSVC.
++-------------------------------------------------------------------------\r
++These instructions are for static link libraries, using Microsoft Visual\r
++Studio 7 and later. There are project files to create DLLs, using\r
++Visual Studio 2008 or later, in the 'dll' subdirectory. People maintain\r
++those project files separately from the rest of the build system, so it's\r
++not uncommon for something to work with one but not the other.\r
++-------------------------------------------------------------------------\r
+ \r
+ \r
+ 1. Run the batch file ConfigureWin32.bat, found in the Windows\r
diff --git a/libs/xmlrpc-c/Windows/abyss.2008.vcproj b/libs/xmlrpc-c/Windows/abyss.2008.vcproj
deleted file mode 100644
index 45508db..0000000
-</Project>
\ No newline at end of file
diff --git a/libs/xmlrpc-c/Windows/cpptest.dsp b/libs/xmlrpc-c/Windows/cpptest.dsp
-index 9db8ccc..49f52c1 100644
+index 9db8ccc..4058491 100644
--- a/libs/xmlrpc-c/Windows/cpptest.dsp
+++ b/libs/xmlrpc-c/Windows/cpptest.dsp
-@@ -1,121 +1,128 @@
--# Microsoft Developer Studio Project File - Name="cpptest" - Package Owner=<4>\r
--# Microsoft Developer Studio Generated Build File, Format Version 6.00\r
--# ** DO NOT EDIT **\r
--\r
--# TARGTYPE "Win32 (x86) Console Application" 0x0103\r
--\r
--CFG=cpptest - Win32 Debug\r
--!MESSAGE This is not a valid makefile. To build this project using NMAKE,\r
--!MESSAGE use the Export Makefile command and run\r
--!MESSAGE \r
--!MESSAGE NMAKE /f "cpptest.mak".\r
--!MESSAGE \r
--!MESSAGE You can specify a configuration when running NMAKE\r
--!MESSAGE by defining the macro CFG on the command line. For example:\r
--!MESSAGE \r
--!MESSAGE NMAKE /f "cpptest.mak" CFG="cpptest - Win32 Debug"\r
--!MESSAGE \r
--!MESSAGE Possible choices for configuration are:\r
--!MESSAGE \r
--!MESSAGE "cpptest - Win32 Release" (based on "Win32 (x86) Console Application")\r
--!MESSAGE "cpptest - Win32 Debug" (based on "Win32 (x86) Console Application")\r
--!MESSAGE \r
--\r
--# Begin Project\r
--# PROP AllowPerConfigDependencies 0\r
--CPP=cl.exe\r
--RSC=rc.exe\r
--\r
--!IF "$(CFG)" == "cpptest - Win32 Release"\r
--\r
--# PROP BASE Use_MFC 0\r
--# PROP BASE Use_Debug_Libraries 0\r
--# PROP BASE Output_Dir "Release"\r
--# PROP BASE Intermediate_Dir "Release"\r
--# PROP BASE Target_Dir ""\r
--# PROP Use_MFC 0\r
--# PROP Use_Debug_Libraries 0\r
--# PROP Output_Dir "Release\cpptest"\r
--# PROP Intermediate_Dir "Release\cpptest"\r
--# PROP Ignore_Export_Lib 0\r
--# PROP Target_Dir ""\r
--# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c\r
--# ADD CPP /nologo /MT /W3 /GX /O2 /I ".." /I "../include" /I "../lib/util/include" /I "../.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "ABYSS_WIN32" /D "CURL_STATICLIB" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /c\r
--# ADD BASE RSC /l 0x409 /d "NDEBUG"\r
--# ADD RSC /l 0x409 /d "NDEBUG"\r
--BSC32=bscmake.exe\r
--# ADD BASE BSC32 /nologo\r
--# ADD BSC32 /nologo\r
--LINK32=link.exe\r
--# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386\r
--# ADD LINK32 ..\lib\xmlrpccpp.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Ws2_32.lib Wininet.lib /nologo /subsystem:console /machine:I386 /out:"..\bin\cpptest.exe"\r
--\r
--!ELSEIF "$(CFG)" == "cpptest - Win32 Debug"\r
--\r
--# PROP BASE Use_MFC 0\r
--# PROP BASE Use_Debug_Libraries 1\r
--# PROP BASE Output_Dir "Debug"\r
--# PROP BASE Intermediate_Dir "Debug"\r
--# PROP BASE Target_Dir ""\r
--# PROP Use_MFC 0\r
--# PROP Use_Debug_Libraries 1\r
--# PROP Output_Dir "Debug\cpptest"\r
--# PROP Intermediate_Dir "Debug\cpptest"\r
--# PROP Ignore_Export_Lib 0\r
--# PROP Target_Dir ""\r
--# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c\r
--# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "../.." /I ".." /I "../include" /I "../lib/util/include" /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "ABYSS_WIN32" /D "CURL_STATICLIB" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /GZ /c\r
--# ADD BASE RSC /l 0x409 /d "_DEBUG"\r
--# ADD RSC /l 0x409 /d "_DEBUG"\r
--BSC32=bscmake.exe\r
--# ADD BASE BSC32 /nologo\r
--# ADD BSC32 /nologo\r
--LINK32=link.exe\r
--# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept\r
--# ADD LINK32 ..\lib\xmlrpccppD.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Ws2_32.lib Wininet.lib /nologo /subsystem:console /debug /machine:I386 /out:"..\bin\cpptestD.exe" /pdbtype:sept\r
--\r
--!ENDIF \r
--\r
--# Begin Target\r
--\r
--# Name "cpptest - Win32 Release"\r
--# Name "cpptest - Win32 Debug"\r
--# Begin Group "Source Files"\r
--\r
--# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\test\registry.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\test\server_abyss.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\test\server_pstream.cpp\r
+@@ -85,6 +85,10 @@ LINK32=link.exe
+ # PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
+ # Begin Source File\r
+ \r
++SOURCE=..\src\cpp\test\value.cpp\r
++# End Source File\r
++# Begin Source File\r
++\r
+ SOURCE=..\src\cpp\test\registry.cpp\r
+ # End Source File\r
+ # Begin Source File\r
+@@ -94,7 +98,6 @@ SOURCE=..\src\cpp\test\server_abyss.cpp
+ # Begin Source File\r
+ \r
+ SOURCE=..\src\cpp\test\server_pstream.cpp\r
-# PROP Exclude_From_Build 1\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\test\test.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\test\testclient_dummy.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\test\tools.cpp\r
--# End Source File\r
--# End Group\r
--# Begin Group "Header Files"\r
--\r
--# PROP Default_Filter "h;hpp;hxx;hm;inl"\r
--# End Group\r
--# Begin Group "Resource Files"\r
--\r
--# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
--# End Group\r
--# End Target\r
--# End Project\r
-+# Microsoft Developer Studio Project File - Name="cpptest" - Package Owner=<4>
-+# Microsoft Developer Studio Generated Build File, Format Version 6.00
-+# ** DO NOT EDIT **
-+
-+# TARGTYPE "Win32 (x86) Console Application" 0x0103
-+
-+CFG=cpptest - Win32 Debug
-+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-+!MESSAGE use the Export Makefile command and run
-+!MESSAGE
-+!MESSAGE NMAKE /f "cpptest.mak".
-+!MESSAGE
-+!MESSAGE You can specify a configuration when running NMAKE
-+!MESSAGE by defining the macro CFG on the command line. For example:
-+!MESSAGE
-+!MESSAGE NMAKE /f "cpptest.mak" CFG="cpptest - Win32 Debug"
-+!MESSAGE
-+!MESSAGE Possible choices for configuration are:
-+!MESSAGE
-+!MESSAGE "cpptest - Win32 Release" (based on "Win32 (x86) Console Application")
-+!MESSAGE "cpptest - Win32 Debug" (based on "Win32 (x86) Console Application")
-+!MESSAGE
-+
-+# Begin Project
-+# PROP AllowPerConfigDependencies 0
-+CPP=cl.exe
-+RSC=rc.exe
-+
-+!IF "$(CFG)" == "cpptest - Win32 Release"
-+
-+# PROP BASE Use_MFC 0
-+# PROP BASE Use_Debug_Libraries 0
-+# PROP BASE Output_Dir "Release"
-+# PROP BASE Intermediate_Dir "Release"
-+# PROP BASE Target_Dir ""
-+# PROP Use_MFC 0
-+# PROP Use_Debug_Libraries 0
-+# PROP Output_Dir "Release\cpptest"
-+# PROP Intermediate_Dir "Release\cpptest"
-+# PROP Ignore_Export_Lib 0
-+# PROP Target_Dir ""
-+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-+# ADD CPP /nologo /MT /W3 /GX /O2 /I ".." /I "../include" /I "../lib/util/include" /I "../.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "ABYSS_WIN32" /D "CURL_STATICLIB" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /c
-+# ADD BASE RSC /l 0x409 /d "NDEBUG"
-+# ADD RSC /l 0x409 /d "NDEBUG"
-+BSC32=bscmake.exe
-+# ADD BASE BSC32 /nologo
-+# ADD BSC32 /nologo
-+LINK32=link.exe
-+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-+# ADD LINK32 ..\lib\xmlrpccpp.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Ws2_32.lib Wininet.lib /nologo /subsystem:console /machine:I386 /out:"..\bin\cpptest.exe"
-+
-+!ELSEIF "$(CFG)" == "cpptest - Win32 Debug"
-+
-+# PROP BASE Use_MFC 0
-+# PROP BASE Use_Debug_Libraries 1
-+# PROP BASE Output_Dir "Debug"
-+# PROP BASE Intermediate_Dir "Debug"
-+# PROP BASE Target_Dir ""
-+# PROP Use_MFC 0
-+# PROP Use_Debug_Libraries 1
-+# PROP Output_Dir "Debug\cpptest"
-+# PROP Intermediate_Dir "Debug\cpptest"
-+# PROP Ignore_Export_Lib 0
-+# PROP Target_Dir ""
-+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-+# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "../.." /I ".." /I "../include" /I "../lib/util/include" /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "ABYSS_WIN32" /D "CURL_STATICLIB" /D "_CRT_SECURE_NO_WARNINGS" /YX /FD /GZ /c
-+# ADD BASE RSC /l 0x409 /d "_DEBUG"
-+# ADD RSC /l 0x409 /d "_DEBUG"
-+BSC32=bscmake.exe
-+# ADD BASE BSC32 /nologo
-+# ADD BSC32 /nologo
-+LINK32=link.exe
-+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-+# ADD LINK32 ..\lib\xmlrpccppD.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Ws2_32.lib Wininet.lib /nologo /subsystem:console /debug /machine:I386 /out:"..\bin\cpptestD.exe" /pdbtype:sept
-+
-+!ENDIF
-+
-+# Begin Target
-+
-+# Name "cpptest - Win32 Release"
-+# Name "cpptest - Win32 Debug"
-+# Begin Group "Source Files"
-+
-+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\test\value.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\test\registry.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\test\server_abyss.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\test\server_pstream.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\test\test.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\test\testclient_dummy.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\test\tools.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=.\socketpair.cpp
-+# End Source File
-+# End Group
-+# Begin Group "Header Files"
-+
-+# PROP Default_Filter "h;hpp;hxx;hm;inl"
-+# End Group
-+# Begin Group "Resource Files"
-+
-+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-+# End Group
-+# End Target
-+# End Project
+ # End Source File\r
+ # Begin Source File\r
+ \r
+@@ -108,6 +111,10 @@ SOURCE=..\src\cpp\test\testclient_dummy.cpp
+ \r
+ SOURCE=..\src\cpp\test\tools.cpp\r
+ # End Source File\r
++# Begin Source File\r
++\r
++SOURCE=.\socketpair.cpp\r
++# End Source File\r
+ # End Group\r
+ # Begin Group "Header Files"\r
+ \r
+diff --git a/libs/xmlrpc-c/Windows/curllink.h b/libs/xmlrpc-c/Windows/curllink.h
+index 516fec0..090e4bf 100644
+--- a/libs/xmlrpc-c/Windows/curllink.h
++++ b/libs/xmlrpc-c/Windows/curllink.h
+@@ -1,18 +1,18 @@
+-/* We use pragma statements to tell the linker what we need to link
+- with. Since Curl requires Winsock, Winmm, and libcurl, and no other
+- project does, we include this file into the Curl transport source code
+- to tell the linker to add these libs.
+-
+- Alternatively, the USER can add the libraries to LINK with as
+- NEEDED!
+-*/
+-
+-#ifdef _DEBUG
+-#pragma comment( lib, "C:\\FG\\FGCOMXML\\curl\\build\\Debug\\Lib_curl.lib" )
+-#else
+-#pragma comment( lib, "C:\\FG\\FGCOMXML\\curl\\build\\Release\\Lib_curl.lib" )
+-#endif
+-
+-#pragma comment( lib, "Winmm.lib" )
+-#pragma comment( lib, "Ws2_32.lib" )
+-#pragma comment( lib, "Wldap32.lib" )
++/* We use pragma statements to tell the linker what we need to link\r
++ with. Since Curl requires Winsock, Winmm, and libcurl, and no other\r
++ project does, we include this file into the Curl transport source code\r
++ to tell the linker to add these libs.\r
++ \r
++ Alternatively, the USER can add the libraries to LINK with as\r
++ NEEDED!\r
++*/\r
++\r
++#ifdef _DEBUG\r
++#pragma comment( lib, "C:\\FG\\FGCOMXML\\curl\\build\\Debug\\Lib_curl.lib" )\r
++#else\r
++#pragma comment( lib, "C:\\FG\\FGCOMXML\\curl\\build\\Release\\Lib_curl.lib" )\r
++#endif\r
++\r
++#pragma comment( lib, "Winmm.lib" )\r
++#pragma comment( lib, "Ws2_32.lib" )\r
++#pragma comment( lib, "Wldap32.lib" )\r
+diff --git a/libs/xmlrpc-c/Windows/dll/cpptest.vcproj b/libs/xmlrpc-c/Windows/dll/cpptest.vcproj
+new file mode 100644
+index 0000000..dcffa92
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/cpptest.vcproj
+@@ -0,0 +1,482 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="cpptest"\r
++ ProjectGUID="{26FB3E14-7E0C-4B0C-AB1E-CFE4B48A1856}"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalOptions="/D INTERNAL_EXPAT"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;ABYSS_WIN32;CURL_STATICLIB;_CRT_SECURE_NO_WARNINGS"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib Wininet.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateManifest="true"\r
++ IgnoreDefaultLibraryNames=""\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalOptions="/D INTERNAL_EXPAT"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../..,../..,../../include,../../lib/util/include"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;ABYSS_WIN32;CURL_STATICLIB;_CRT_SECURE_NO_WARNINGS"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib Wininet.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateManifest="true"\r
++ IgnoreDefaultLibraryNames=""\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalOptions="/D INTERNAL_EXPAT"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;ABYSS_WIN32;CURL_STATICLIB;_CRT_SECURE_NO_WARNINGS"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib Wininet.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateManifest="true"\r
++ IgnoreDefaultLibraryNames=""\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalOptions="/D INTERNAL_EXPAT"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../..,../..,../../include,../../lib/util/include"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;ABYSS_WIN32;CURL_STATICLIB;_CRT_SECURE_NO_WARNINGS"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib Wininet.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateManifest="true"\r
++ IgnoreDefaultLibraryNames=""\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
++ >\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\base64.cpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\registry.cpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\server_abyss.cpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\server_pstream.cpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\socketpair.cpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\test.cpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\testclient_dummy.cpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\tools.cpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\value.cpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\xml.cpp"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\base64.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\registry.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\server_abyss.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\server_pstream.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\testclient.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\tools.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\value.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\test\xml.hpp"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Resource Files"\r
++ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/gennmtab.vcproj b/libs/xmlrpc-c/Windows/dll/gennmtab.vcproj
+new file mode 100644
+index 0000000..0336147
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/gennmtab.vcproj
+@@ -0,0 +1,449 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="gennmtab"\r
++ ProjectGUID="{99BD200E-A4D5-4ED4-9D00-A6A19EFE1412}"\r
++ RootNamespace="gennmtab"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TypeLibraryName="$(OutDir)\$(ProjectName).tlb"\r
++ HeaderFileName=""\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../.."\r
++ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"\r
++ MinimalRebuild="true"\r
++ RuntimeLibrary="0"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="2057"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="2"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ Description="(D) Generating nametab.h ..."\r
++ CommandLine="$(OutDir)\$(ProjectName).exe >..\..\lib\expat\xmltok\nametab.h"\r
++ ExcludedFromBuild="false"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TypeLibraryName="$(OutDir)\$(ProjectName).tlb"\r
++ HeaderFileName=""\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../.."\r
++ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"\r
++ StringPooling="true"\r
++ RuntimeLibrary="0"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="2057"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ Description="(R) Generating nametab.h ..."\r
++ CommandLine="$(OutDir)\$(ProjectName).exe >..\..\lib\expat\xmltok\nametab.h"\r
++ ExcludedFromBuild="false"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ TypeLibraryName="$(OutDir)\$(ProjectName).tlb"\r
++ HeaderFileName=""\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../.."\r
++ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"\r
++ MinimalRebuild="true"\r
++ RuntimeLibrary="0"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="2057"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="2"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ Description="(D) Generating nametab.h ..."\r
++ CommandLine="$(OutDir)\$(ProjectName).exe >..\..\lib\expat\xmltok\nametab.h"\r
++ ExcludedFromBuild="false"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ TypeLibraryName="$(OutDir)\$(ProjectName).tlb"\r
++ HeaderFileName=""\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../.."\r
++ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"\r
++ StringPooling="true"\r
++ RuntimeLibrary="0"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="2057"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ Description="(R) Generating nametab.h ..."\r
++ CommandLine="$(OutDir)\$(ProjectName).exe >..\..\lib\expat\xmltok\nametab.h"\r
++ ExcludedFromBuild="false"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;for;f90"\r
++ >\r
++ <File\r
++ RelativePath="..\..\lib\expat\gennmtab\gennmtab.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl;fi;fd"\r
++ >\r
++ </Filter>\r
++ <Filter\r
++ Name="Resource Files"\r
++ Filter="ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/rpctest.vcproj b/libs/xmlrpc-c/Windows/dll/rpctest.vcproj
+new file mode 100644
+index 0000000..3b5bfba
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/rpctest.vcproj
+@@ -0,0 +1,574 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="rpctest"\r
++ ProjectGUID="{4CFB235E-56AE-4BF2-BE67-8FD4AF5F1722}"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../..;../..;../../include;../../lib/util/include;../../lib/expat/xmlparse"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;ABYSS_WIN32"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ Description="Copy test files"\r
++ CommandLine="if not exist $OutDir)\data md $(OutDir)\data
copy ..\..\src\test\data\*.* $(OutDir)\data
"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..;../../include;../../lib/util/include;../../..;../../lib/expat/xmlparse"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;ABYSS_WIN32"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(IntDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ Description="Copy test files"\r
++ CommandLine="if not exist $(OutDir)\data md $(OutDir)\data
copy ..\..\src\test\data\*.* $(OutDir)\data
"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../..;../..;../../include;../../lib/util/include;../../lib/expat/xmlparse"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;ABYSS_WIN32"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ Description="Copy test files"\r
++ CommandLine="if not exist $OutDir)\data md $(OutDir)\data
copy ..\..\src\test\data\*.* $(OutDir)\data
"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..;../../include;../../lib/util/include;../../..;../../lib/expat/xmlparse"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;ABYSS_WIN32"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(IntDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ Description="Copy test files"\r
++ CommandLine="if not exist $(OutDir)\data md $(OutDir)\data
copy ..\..\src\test\data\*.* $(OutDir)\data
"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
++ >\r
++ <File\r
++ RelativePath="..\..\src\test\abyss.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\util\casprintf.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\cgi.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\client.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\method_registry.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\parse_xml.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\serialize.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\serialize_value.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\server_abyss.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\test.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\testtool.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\value.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\value_datetime.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\xml_data.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_expat.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ <File\r
++ RelativePath="..\..\src\test\abyss.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\cgi.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\client.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\method_registry.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\parse_xml.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\serialize.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\serialize_value.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\server_abyss.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\test.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\testtool.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\value.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\value_datetime.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\test\xml_data.h"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="TestFiles"\r
++ >\r
++ <File\r
++ RelativePath="..\..\src\testdata\http-req-simple.txt"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\testdata\req_no_params.xml"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\testdata\req_out_of_order.xml"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\testdata\req_value_name.xml"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Resource Files"\r
++ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/sample_add_asynch_client.vcproj b/libs/xmlrpc-c/Windows/dll/sample_add_asynch_client.vcproj
+new file mode 100644
+index 0000000..d5145ae
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/sample_add_asynch_client.vcproj
+@@ -0,0 +1,443 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="sample_add_asynch_client"\r
++ ProjectGUID="{2D4A179E-E2BA-4ED9-934E-7E54C08F1652}"\r
++ RootNamespace="sample_add_asynch_client"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ HeaderFileName=""\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="odbc32.lib odbccp32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ HeaderFileName=""\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="WinInet.lib odbc32.lib odbccp32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ HeaderFileName=""\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="odbc32.lib odbccp32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ HeaderFileName=""\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="WinInet.lib odbc32.lib odbccp32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
++ >\r
++ <File\r
++ RelativePath="..\..\examples\xmlrpc_asynch_client.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ </Filter>\r
++ <Filter\r
++ Name="Resource Files"\r
++ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/sample_add_server.vcproj b/libs/xmlrpc-c/Windows/dll/sample_add_server.vcproj
+new file mode 100644
+index 0000000..6060a06
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/sample_add_server.vcproj
+@@ -0,0 +1,433 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="sample_add_server"\r
++ ProjectGUID="{BEEB1B9C-BAF4-4B54-AB51-891156301702}"\r
++ RootNamespace="sample_add_server"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;ABYSS_WIN32;_THREAD"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;ABYSS_WIN32;_THREAD"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;ABYSS_WIN32;_THREAD"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;ABYSS_WIN32;_THREAD"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
++ >\r
++ <File\r
++ RelativePath="..\..\examples\xmlrpc_sample_add_server.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ </Filter>\r
++ <Filter\r
++ Name="Resource Files"\r
++ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/sample_add_server_w32httpsys.vcproj b/libs/xmlrpc-c/Windows/dll/sample_add_server_w32httpsys.vcproj
+new file mode 100644
+index 0000000..e4e7a74
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/sample_add_server_w32httpsys.vcproj
+@@ -0,0 +1,433 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="sample_add_server_w32httpsys"\r
++ ProjectGUID="{B6887828-9480-4D4D-9CFC-AE4980D41707}"\r
++ RootNamespace="sample_add_server_w32httpsys"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;ABYSS_WIN32;_THREAD"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;ABYSS_WIN32;_THREAD"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;ABYSS_WIN32;_THREAD"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;ABYSS_WIN32;_THREAD"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
++ >\r
++ <File\r
++ RelativePath="..\..\examples\xmlrpc_sample_add_server_w32httpsys.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ </Filter>\r
++ <Filter\r
++ Name="Resource Files"\r
++ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/sample_add_sync_client.vcproj b/libs/xmlrpc-c/Windows/dll/sample_add_sync_client.vcproj
+new file mode 100644
+index 0000000..9151e8e
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/sample_add_sync_client.vcproj
+@@ -0,0 +1,435 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="sample_add_sync_client"\r
++ ProjectGUID="{A7A81BBD-C84D-479A-A9BD-194ADA3B1710}"\r
++ RootNamespace="sample_add_sync_client"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(IntDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(IntDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
++ >\r
++ <File\r
++ RelativePath="..\..\examples\xmlrpc_sample_add_client.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ </Filter>\r
++ <Filter\r
++ Name="Resource Files"\r
++ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/sample_auth_client.vcproj b/libs/xmlrpc-c/Windows/dll/sample_auth_client.vcproj
+new file mode 100644
+index 0000000..07aeb90
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/sample_auth_client.vcproj
+@@ -0,0 +1,435 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="sample_auth_client"\r
++ ProjectGUID="{29A2BBC4-9ED9-4162-817C-FEEB36FB1714}"\r
++ RootNamespace="sample_auth_client"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(IntDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(IntDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../..,../../include,../../lib/util/include,../../.."\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
++ >\r
++ <File\r
++ RelativePath="..\..\examples\auth_client.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ </Filter>\r
++ <Filter\r
++ Name="Resource Files"\r
++ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/tool_xmlrpc-transport.vcproj b/libs/xmlrpc-c/Windows/dll/tool_xmlrpc-transport.vcproj
+new file mode 100644
+index 0000000..1f35057
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/tool_xmlrpc-transport.vcproj
+@@ -0,0 +1,430 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="xmlrpc_transport"\r
++ ProjectGUID="{4CFB235E-56AE-4BF2-BE67-8FD4AF5F1942}"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../..;../..;../../include;../../lib/util/include;../../lib/expat/xmlparse;../../tools/lib/include"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;ABYSS_WIN32"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ CommandLine=""\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..;../../include;../../lib/util/include;../../..;../../lib/expat/xmlparse;../../tools/lib/include"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;ABYSS_WIN32"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(IntDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ CommandLine=""\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../..;../..;../../include;../../lib/util/include;../../lib/expat/xmlparse;../../tools/lib/include"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;ABYSS_WIN32"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ CommandLine=""\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..;../../include;../../lib/util/include;../../..;../../lib/expat/xmlparse;../../tools/lib/include"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;ABYSS_WIN32"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(IntDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ CommandLine=""\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
++ >\r
++ <File\r
++ RelativePath="..\..\lib\util\casprintf.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\util\cmdline_parser.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\tools\lib\dumpvalue.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\util\getoptx.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\util\string_parser.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\util\stripcaseeq.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\tools\xmlrpc_transport\xmlrpc_transport.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ </Filter>\r
++ <Filter\r
++ Name="Resource Files"\r
++ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/tool_xmlrpc.vcproj b/libs/xmlrpc-c/Windows/dll/tool_xmlrpc.vcproj
+new file mode 100644
+index 0000000..9708e11
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/tool_xmlrpc.vcproj
+@@ -0,0 +1,430 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="xmlrpc"\r
++ ProjectGUID="{4CFB235E-56AE-4BF2-BE67-8FD4AF5F1940}"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../..;../..;../../include;../../lib/util/include;../../lib/expat/xmlparse;../../tools/lib/include"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;ABYSS_WIN32"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ CommandLine=""\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..;../../include;../../lib/util/include;../../..;../../lib/expat/xmlparse;../../tools/lib/include"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;ABYSS_WIN32"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(IntDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="1"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ CommandLine=""\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../..;../..;../../include;../../lib/util/include;../../lib/expat/xmlparse;../../tools/lib/include"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;ABYSS_WIN32"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ CommandLine=""\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="1"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../..;../../include;../../lib/util/include;../../..;../../lib/expat/xmlparse;../../tools/lib/include"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;ABYSS_WIN32"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).exe"\r
++ LinkIncremental="1"\r
++ SuppressStartupBanner="true"\r
++ ProgramDatabaseFile="$(IntDir)\$(ProjectName).pdb"\r
++ SubSystem="1"\r
++ RandomizedBaseAddress="1"\r
++ DataExecutionPrevention="0"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ CommandLine=""\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
++ >\r
++ <File\r
++ RelativePath="..\..\lib\util\casprintf.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\util\cmdline_parser.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\tools\lib\dumpvalue.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\util\getoptx.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\util\string_parser.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\util\stripcaseeq.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\tools\xmlrpc\xmlrpc.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ </Filter>\r
++ <Filter\r
++ Name="Resource Files"\r
++ Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/xmlrpc.sln b/libs/xmlrpc-c/Windows/dll/xmlrpc.sln
+new file mode 100644
+index 0000000..814b373
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/xmlrpc.sln
+@@ -0,0 +1,327 @@
++\r
++Microsoft Visual Studio Solution File, Format Version 10.00\r
++# Visual Studio 2008\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libxmlrpc_xmlparse", "xmlrpc_xmlparse.vcproj", "{40B0756D-AFEE-4A38-9F38-A372CE431404}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {BD9F6041-A272-462D-8C41-87CEF1F11408} = {BD9F6041-A272-462D-8C41-87CEF1F11408}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libxmlrpc_xmltok", "xmlrpc_xmltok.vcproj", "{BD9F6041-A272-462D-8C41-87CEF1F11408}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {99BD200E-A4D5-4ED4-9D00-A6A19EFE1412} = {99BD200E-A4D5-4ED4-9D00-A6A19EFE1412}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gennmtab", "gennmtab.vcproj", "{99BD200E-A4D5-4ED4-9D00-A6A19EFE1412}"\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libxmlrpc_util", "xmlrpc_util.vcproj", "{29FBABB6-E36A-4559-9514-B3DAF6AE1416}"\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libxmlrpc", "xmlrpc.vcproj", "{226AB06F-60CA-4B21-9040-C6ECC0581522}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {40B0756D-AFEE-4A38-9F38-A372CE431404} = {40B0756D-AFEE-4A38-9F38-A372CE431404}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libxmlrpc_abyss", "xmlrpc_abyss.vcproj", "{20A8F64B-F738-4D32-A798-A65AD8291541}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libxmlrpc_server", "xmlrpc_server.vcproj", "{74B67128-BC84-4BCB-A256-9286B6371552}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libxmlrpc_server_abyss", "xmlrpc_server_abyss.vcproj", "{E98186CB-F1B0-40A6-87A5-77B13A3F1600}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {74B67128-BC84-4BCB-A256-9286B6371552} = {74B67128-BC84-4BCB-A256-9286B6371552}\r
++ {20A8F64B-F738-4D32-A798-A65AD8291541} = {20A8F64B-F738-4D32-A798-A65AD8291541}\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libxmlrpc_server_cgi", "xmlrpc_server_cgi.vcproj", "{A2AAAF37-F382-4A11-8D86-53B589921616}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {74B67128-BC84-4BCB-A256-9286B6371552} = {74B67128-BC84-4BCB-A256-9286B6371552}\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libxmlrpc_server_w32httpsys", "xmlrpc_server_w32httpsys.vcproj", "{0EECB080-FC8F-4C46-9FB7-5DB22F9D1622}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {74B67128-BC84-4BCB-A256-9286B6371552} = {74B67128-BC84-4BCB-A256-9286B6371552}\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libxmlrpc_client", "xmlrpc_client.vcproj", "{28BB53D9-D487-41DF-BBB3-FDB5846D1630}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sample_add_asynch_client", "sample_add_asynch_client.vcproj", "{2D4A179E-E2BA-4ED9-934E-7E54C08F1652}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630} = {28BB53D9-D487-41DF-BBB3-FDB5846D1630}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sample_add_server", "sample_add_server.vcproj", "{BEEB1B9C-BAF4-4B54-AB51-891156301702}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {74B67128-BC84-4BCB-A256-9286B6371552} = {74B67128-BC84-4BCB-A256-9286B6371552}\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ {E98186CB-F1B0-40A6-87A5-77B13A3F1600} = {E98186CB-F1B0-40A6-87A5-77B13A3F1600}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sample_add_server_w32httpsys", "sample_add_server_w32httpsys.vcproj", "{B6887828-9480-4D4D-9CFC-AE4980D41707}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {74B67128-BC84-4BCB-A256-9286B6371552} = {74B67128-BC84-4BCB-A256-9286B6371552}\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {0EECB080-FC8F-4C46-9FB7-5DB22F9D1622} = {0EECB080-FC8F-4C46-9FB7-5DB22F9D1622}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sample_add_sync_client", "sample_add_sync_client.vcproj", "{A7A81BBD-C84D-479A-A9BD-194ADA3B1710}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630} = {28BB53D9-D487-41DF-BBB3-FDB5846D1630}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sample_auth_client", "sample_auth_client.vcproj", "{29A2BBC4-9ED9-4162-817C-FEEB36FB1714}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630} = {28BB53D9-D487-41DF-BBB3-FDB5846D1630}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rpctest", "rpctest.vcproj", "{4CFB235E-56AE-4BF2-BE67-8FD4AF5F1722}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {74B67128-BC84-4BCB-A256-9286B6371552} = {74B67128-BC84-4BCB-A256-9286B6371552}\r
++ {20A8F64B-F738-4D32-A798-A65AD8291541} = {20A8F64B-F738-4D32-A798-A65AD8291541}\r
++ {40B0756D-AFEE-4A38-9F38-A372CE431404} = {40B0756D-AFEE-4A38-9F38-A372CE431404}\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ {E98186CB-F1B0-40A6-87A5-77B13A3F1600} = {E98186CB-F1B0-40A6-87A5-77B13A3F1600}\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630} = {28BB53D9-D487-41DF-BBB3-FDB5846D1630}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libxmlrpc++", "xmlrpc__.vcproj", "{3E7064F3-6200-4C39-85BE-775931D21828}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {74B67128-BC84-4BCB-A256-9286B6371552} = {74B67128-BC84-4BCB-A256-9286B6371552}\r
++ {20A8F64B-F738-4D32-A798-A65AD8291541} = {20A8F64B-F738-4D32-A798-A65AD8291541}\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ {E98186CB-F1B0-40A6-87A5-77B13A3F1600} = {E98186CB-F1B0-40A6-87A5-77B13A3F1600}\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630} = {28BB53D9-D487-41DF-BBB3-FDB5846D1630}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cpptest", "cpptest.vcproj", "{26FB3E14-7E0C-4B0C-AB1E-CFE4B48A1856}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {74B67128-BC84-4BCB-A256-9286B6371552} = {74B67128-BC84-4BCB-A256-9286B6371552}\r
++ {20A8F64B-F738-4D32-A798-A65AD8291541} = {20A8F64B-F738-4D32-A798-A65AD8291541}\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630} = {28BB53D9-D487-41DF-BBB3-FDB5846D1630}\r
++ {3E7064F3-6200-4C39-85BE-775931D21828} = {3E7064F3-6200-4C39-85BE-775931D21828}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmlrpc", "tool_xmlrpc.vcproj", "{4CFB235E-56AE-4BF2-BE67-8FD4AF5F1940}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630} = {28BB53D9-D487-41DF-BBB3-FDB5846D1630}\r
++ EndProjectSection\r
++EndProject\r
++Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xmlrpc_transport", "tool_xmlrpc-transport.vcproj", "{4CFB235E-56AE-4BF2-BE67-8FD4AF5F1942}"\r
++ ProjectSection(ProjectDependencies) = postProject\r
++ {74B67128-BC84-4BCB-A256-9286B6371552} = {74B67128-BC84-4BCB-A256-9286B6371552}\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522} = {226AB06F-60CA-4B21-9040-C6ECC0581522}\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416} = {29FBABB6-E36A-4559-9514-B3DAF6AE1416}\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630} = {28BB53D9-D487-41DF-BBB3-FDB5846D1630}\r
++ EndProjectSection\r
++EndProject\r
++Global\r
++ GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
++ Debug|Win32 = Debug|Win32\r
++ Debug|x64 = Debug|x64\r
++ Release|Win32 = Release|Win32\r
++ Release|x64 = Release|x64\r
++ EndGlobalSection\r
++ GlobalSection(ProjectConfigurationPlatforms) = postSolution\r
++ {40B0756D-AFEE-4A38-9F38-A372CE431404}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {40B0756D-AFEE-4A38-9F38-A372CE431404}.Debug|Win32.Build.0 = Debug|Win32\r
++ {40B0756D-AFEE-4A38-9F38-A372CE431404}.Debug|x64.ActiveCfg = Debug|x64\r
++ {40B0756D-AFEE-4A38-9F38-A372CE431404}.Debug|x64.Build.0 = Debug|x64\r
++ {40B0756D-AFEE-4A38-9F38-A372CE431404}.Release|Win32.ActiveCfg = Release|Win32\r
++ {40B0756D-AFEE-4A38-9F38-A372CE431404}.Release|Win32.Build.0 = Release|Win32\r
++ {40B0756D-AFEE-4A38-9F38-A372CE431404}.Release|x64.ActiveCfg = Release|x64\r
++ {40B0756D-AFEE-4A38-9F38-A372CE431404}.Release|x64.Build.0 = Release|x64\r
++ {BD9F6041-A272-462D-8C41-87CEF1F11408}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {BD9F6041-A272-462D-8C41-87CEF1F11408}.Debug|Win32.Build.0 = Debug|Win32\r
++ {BD9F6041-A272-462D-8C41-87CEF1F11408}.Debug|x64.ActiveCfg = Debug|x64\r
++ {BD9F6041-A272-462D-8C41-87CEF1F11408}.Debug|x64.Build.0 = Debug|x64\r
++ {BD9F6041-A272-462D-8C41-87CEF1F11408}.Release|Win32.ActiveCfg = Release|Win32\r
++ {BD9F6041-A272-462D-8C41-87CEF1F11408}.Release|Win32.Build.0 = Release|Win32\r
++ {BD9F6041-A272-462D-8C41-87CEF1F11408}.Release|x64.ActiveCfg = Release|x64\r
++ {BD9F6041-A272-462D-8C41-87CEF1F11408}.Release|x64.Build.0 = Release|x64\r
++ {99BD200E-A4D5-4ED4-9D00-A6A19EFE1412}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {99BD200E-A4D5-4ED4-9D00-A6A19EFE1412}.Debug|Win32.Build.0 = Debug|Win32\r
++ {99BD200E-A4D5-4ED4-9D00-A6A19EFE1412}.Debug|x64.ActiveCfg = Debug|x64\r
++ {99BD200E-A4D5-4ED4-9D00-A6A19EFE1412}.Debug|x64.Build.0 = Debug|x64\r
++ {99BD200E-A4D5-4ED4-9D00-A6A19EFE1412}.Release|Win32.ActiveCfg = Release|Win32\r
++ {99BD200E-A4D5-4ED4-9D00-A6A19EFE1412}.Release|Win32.Build.0 = Release|Win32\r
++ {99BD200E-A4D5-4ED4-9D00-A6A19EFE1412}.Release|x64.ActiveCfg = Release|x64\r
++ {99BD200E-A4D5-4ED4-9D00-A6A19EFE1412}.Release|x64.Build.0 = Release|x64\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416}.Debug|Win32.Build.0 = Debug|Win32\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416}.Debug|x64.ActiveCfg = Debug|x64\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416}.Debug|x64.Build.0 = Debug|x64\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416}.Release|Win32.ActiveCfg = Release|Win32\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416}.Release|Win32.Build.0 = Release|Win32\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416}.Release|x64.ActiveCfg = Release|x64\r
++ {29FBABB6-E36A-4559-9514-B3DAF6AE1416}.Release|x64.Build.0 = Release|x64\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522}.Debug|Win32.Build.0 = Debug|Win32\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522}.Debug|x64.ActiveCfg = Debug|x64\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522}.Debug|x64.Build.0 = Debug|x64\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522}.Release|Win32.ActiveCfg = Release|Win32\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522}.Release|Win32.Build.0 = Release|Win32\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522}.Release|x64.ActiveCfg = Release|x64\r
++ {226AB06F-60CA-4B21-9040-C6ECC0581522}.Release|x64.Build.0 = Release|x64\r
++ {20A8F64B-F738-4D32-A798-A65AD8291541}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {20A8F64B-F738-4D32-A798-A65AD8291541}.Debug|Win32.Build.0 = Debug|Win32\r
++ {20A8F64B-F738-4D32-A798-A65AD8291541}.Debug|x64.ActiveCfg = Debug|x64\r
++ {20A8F64B-F738-4D32-A798-A65AD8291541}.Debug|x64.Build.0 = Debug|x64\r
++ {20A8F64B-F738-4D32-A798-A65AD8291541}.Release|Win32.ActiveCfg = Release|Win32\r
++ {20A8F64B-F738-4D32-A798-A65AD8291541}.Release|Win32.Build.0 = Release|Win32\r
++ {20A8F64B-F738-4D32-A798-A65AD8291541}.Release|x64.ActiveCfg = Release|x64\r
++ {20A8F64B-F738-4D32-A798-A65AD8291541}.Release|x64.Build.0 = Release|x64\r
++ {74B67128-BC84-4BCB-A256-9286B6371552}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {74B67128-BC84-4BCB-A256-9286B6371552}.Debug|Win32.Build.0 = Debug|Win32\r
++ {74B67128-BC84-4BCB-A256-9286B6371552}.Debug|x64.ActiveCfg = Debug|x64\r
++ {74B67128-BC84-4BCB-A256-9286B6371552}.Debug|x64.Build.0 = Debug|x64\r
++ {74B67128-BC84-4BCB-A256-9286B6371552}.Release|Win32.ActiveCfg = Release|Win32\r
++ {74B67128-BC84-4BCB-A256-9286B6371552}.Release|Win32.Build.0 = Release|Win32\r
++ {74B67128-BC84-4BCB-A256-9286B6371552}.Release|x64.ActiveCfg = Release|x64\r
++ {74B67128-BC84-4BCB-A256-9286B6371552}.Release|x64.Build.0 = Release|x64\r
++ {E98186CB-F1B0-40A6-87A5-77B13A3F1600}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {E98186CB-F1B0-40A6-87A5-77B13A3F1600}.Debug|Win32.Build.0 = Debug|Win32\r
++ {E98186CB-F1B0-40A6-87A5-77B13A3F1600}.Debug|x64.ActiveCfg = Debug|x64\r
++ {E98186CB-F1B0-40A6-87A5-77B13A3F1600}.Debug|x64.Build.0 = Debug|x64\r
++ {E98186CB-F1B0-40A6-87A5-77B13A3F1600}.Release|Win32.ActiveCfg = Release|Win32\r
++ {E98186CB-F1B0-40A6-87A5-77B13A3F1600}.Release|Win32.Build.0 = Release|Win32\r
++ {E98186CB-F1B0-40A6-87A5-77B13A3F1600}.Release|x64.ActiveCfg = Release|x64\r
++ {E98186CB-F1B0-40A6-87A5-77B13A3F1600}.Release|x64.Build.0 = Release|x64\r
++ {A2AAAF37-F382-4A11-8D86-53B589921616}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {A2AAAF37-F382-4A11-8D86-53B589921616}.Debug|Win32.Build.0 = Debug|Win32\r
++ {A2AAAF37-F382-4A11-8D86-53B589921616}.Debug|x64.ActiveCfg = Debug|x64\r
++ {A2AAAF37-F382-4A11-8D86-53B589921616}.Debug|x64.Build.0 = Debug|x64\r
++ {A2AAAF37-F382-4A11-8D86-53B589921616}.Release|Win32.ActiveCfg = Release|Win32\r
++ {A2AAAF37-F382-4A11-8D86-53B589921616}.Release|Win32.Build.0 = Release|Win32\r
++ {A2AAAF37-F382-4A11-8D86-53B589921616}.Release|x64.ActiveCfg = Release|x64\r
++ {A2AAAF37-F382-4A11-8D86-53B589921616}.Release|x64.Build.0 = Release|x64\r
++ {0EECB080-FC8F-4C46-9FB7-5DB22F9D1622}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {0EECB080-FC8F-4C46-9FB7-5DB22F9D1622}.Debug|Win32.Build.0 = Debug|Win32\r
++ {0EECB080-FC8F-4C46-9FB7-5DB22F9D1622}.Debug|x64.ActiveCfg = Debug|x64\r
++ {0EECB080-FC8F-4C46-9FB7-5DB22F9D1622}.Debug|x64.Build.0 = Debug|x64\r
++ {0EECB080-FC8F-4C46-9FB7-5DB22F9D1622}.Release|Win32.ActiveCfg = Release|Win32\r
++ {0EECB080-FC8F-4C46-9FB7-5DB22F9D1622}.Release|Win32.Build.0 = Release|Win32\r
++ {0EECB080-FC8F-4C46-9FB7-5DB22F9D1622}.Release|x64.ActiveCfg = Release|x64\r
++ {0EECB080-FC8F-4C46-9FB7-5DB22F9D1622}.Release|x64.Build.0 = Release|x64\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630}.Debug|Win32.Build.0 = Debug|Win32\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630}.Debug|x64.ActiveCfg = Debug|x64\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630}.Debug|x64.Build.0 = Debug|x64\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630}.Release|Win32.ActiveCfg = Release|Win32\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630}.Release|Win32.Build.0 = Release|Win32\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630}.Release|x64.ActiveCfg = Release|x64\r
++ {28BB53D9-D487-41DF-BBB3-FDB5846D1630}.Release|x64.Build.0 = Release|x64\r
++ {2D4A179E-E2BA-4ED9-934E-7E54C08F1652}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {2D4A179E-E2BA-4ED9-934E-7E54C08F1652}.Debug|Win32.Build.0 = Debug|Win32\r
++ {2D4A179E-E2BA-4ED9-934E-7E54C08F1652}.Debug|x64.ActiveCfg = Debug|x64\r
++ {2D4A179E-E2BA-4ED9-934E-7E54C08F1652}.Debug|x64.Build.0 = Debug|x64\r
++ {2D4A179E-E2BA-4ED9-934E-7E54C08F1652}.Release|Win32.ActiveCfg = Release|Win32\r
++ {2D4A179E-E2BA-4ED9-934E-7E54C08F1652}.Release|Win32.Build.0 = Release|Win32\r
++ {2D4A179E-E2BA-4ED9-934E-7E54C08F1652}.Release|x64.ActiveCfg = Release|x64\r
++ {2D4A179E-E2BA-4ED9-934E-7E54C08F1652}.Release|x64.Build.0 = Release|x64\r
++ {BEEB1B9C-BAF4-4B54-AB51-891156301702}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {BEEB1B9C-BAF4-4B54-AB51-891156301702}.Debug|Win32.Build.0 = Debug|Win32\r
++ {BEEB1B9C-BAF4-4B54-AB51-891156301702}.Debug|x64.ActiveCfg = Debug|x64\r
++ {BEEB1B9C-BAF4-4B54-AB51-891156301702}.Debug|x64.Build.0 = Debug|x64\r
++ {BEEB1B9C-BAF4-4B54-AB51-891156301702}.Release|Win32.ActiveCfg = Release|Win32\r
++ {BEEB1B9C-BAF4-4B54-AB51-891156301702}.Release|Win32.Build.0 = Release|Win32\r
++ {BEEB1B9C-BAF4-4B54-AB51-891156301702}.Release|x64.ActiveCfg = Release|x64\r
++ {BEEB1B9C-BAF4-4B54-AB51-891156301702}.Release|x64.Build.0 = Release|x64\r
++ {B6887828-9480-4D4D-9CFC-AE4980D41707}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {B6887828-9480-4D4D-9CFC-AE4980D41707}.Debug|Win32.Build.0 = Debug|Win32\r
++ {B6887828-9480-4D4D-9CFC-AE4980D41707}.Debug|x64.ActiveCfg = Debug|x64\r
++ {B6887828-9480-4D4D-9CFC-AE4980D41707}.Debug|x64.Build.0 = Debug|x64\r
++ {B6887828-9480-4D4D-9CFC-AE4980D41707}.Release|Win32.ActiveCfg = Release|Win32\r
++ {B6887828-9480-4D4D-9CFC-AE4980D41707}.Release|Win32.Build.0 = Release|Win32\r
++ {B6887828-9480-4D4D-9CFC-AE4980D41707}.Release|x64.ActiveCfg = Release|x64\r
++ {B6887828-9480-4D4D-9CFC-AE4980D41707}.Release|x64.Build.0 = Release|x64\r
++ {A7A81BBD-C84D-479A-A9BD-194ADA3B1710}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {A7A81BBD-C84D-479A-A9BD-194ADA3B1710}.Debug|Win32.Build.0 = Debug|Win32\r
++ {A7A81BBD-C84D-479A-A9BD-194ADA3B1710}.Debug|x64.ActiveCfg = Debug|x64\r
++ {A7A81BBD-C84D-479A-A9BD-194ADA3B1710}.Debug|x64.Build.0 = Debug|x64\r
++ {A7A81BBD-C84D-479A-A9BD-194ADA3B1710}.Release|Win32.ActiveCfg = Release|Win32\r
++ {A7A81BBD-C84D-479A-A9BD-194ADA3B1710}.Release|Win32.Build.0 = Release|Win32\r
++ {A7A81BBD-C84D-479A-A9BD-194ADA3B1710}.Release|x64.ActiveCfg = Release|x64\r
++ {A7A81BBD-C84D-479A-A9BD-194ADA3B1710}.Release|x64.Build.0 = Release|x64\r
++ {29A2BBC4-9ED9-4162-817C-FEEB36FB1714}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {29A2BBC4-9ED9-4162-817C-FEEB36FB1714}.Debug|Win32.Build.0 = Debug|Win32\r
++ {29A2BBC4-9ED9-4162-817C-FEEB36FB1714}.Debug|x64.ActiveCfg = Debug|x64\r
++ {29A2BBC4-9ED9-4162-817C-FEEB36FB1714}.Debug|x64.Build.0 = Debug|x64\r
++ {29A2BBC4-9ED9-4162-817C-FEEB36FB1714}.Release|Win32.ActiveCfg = Release|Win32\r
++ {29A2BBC4-9ED9-4162-817C-FEEB36FB1714}.Release|Win32.Build.0 = Release|Win32\r
++ {29A2BBC4-9ED9-4162-817C-FEEB36FB1714}.Release|x64.ActiveCfg = Release|x64\r
++ {29A2BBC4-9ED9-4162-817C-FEEB36FB1714}.Release|x64.Build.0 = Release|x64\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1722}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1722}.Debug|Win32.Build.0 = Debug|Win32\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1722}.Debug|x64.ActiveCfg = Debug|x64\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1722}.Debug|x64.Build.0 = Debug|x64\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1722}.Release|Win32.ActiveCfg = Release|Win32\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1722}.Release|Win32.Build.0 = Release|Win32\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1722}.Release|x64.ActiveCfg = Release|x64\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1722}.Release|x64.Build.0 = Release|x64\r
++ {3E7064F3-6200-4C39-85BE-775931D21828}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {3E7064F3-6200-4C39-85BE-775931D21828}.Debug|Win32.Build.0 = Debug|Win32\r
++ {3E7064F3-6200-4C39-85BE-775931D21828}.Debug|x64.ActiveCfg = Debug|x64\r
++ {3E7064F3-6200-4C39-85BE-775931D21828}.Debug|x64.Build.0 = Debug|x64\r
++ {3E7064F3-6200-4C39-85BE-775931D21828}.Release|Win32.ActiveCfg = Release|Win32\r
++ {3E7064F3-6200-4C39-85BE-775931D21828}.Release|Win32.Build.0 = Release|Win32\r
++ {3E7064F3-6200-4C39-85BE-775931D21828}.Release|x64.ActiveCfg = Release|x64\r
++ {3E7064F3-6200-4C39-85BE-775931D21828}.Release|x64.Build.0 = Release|x64\r
++ {26FB3E14-7E0C-4B0C-AB1E-CFE4B48A1856}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {26FB3E14-7E0C-4B0C-AB1E-CFE4B48A1856}.Debug|Win32.Build.0 = Debug|Win32\r
++ {26FB3E14-7E0C-4B0C-AB1E-CFE4B48A1856}.Debug|x64.ActiveCfg = Debug|x64\r
++ {26FB3E14-7E0C-4B0C-AB1E-CFE4B48A1856}.Debug|x64.Build.0 = Debug|x64\r
++ {26FB3E14-7E0C-4B0C-AB1E-CFE4B48A1856}.Release|Win32.ActiveCfg = Release|Win32\r
++ {26FB3E14-7E0C-4B0C-AB1E-CFE4B48A1856}.Release|Win32.Build.0 = Release|Win32\r
++ {26FB3E14-7E0C-4B0C-AB1E-CFE4B48A1856}.Release|x64.ActiveCfg = Release|x64\r
++ {26FB3E14-7E0C-4B0C-AB1E-CFE4B48A1856}.Release|x64.Build.0 = Release|x64\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1940}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1940}.Debug|Win32.Build.0 = Debug|Win32\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1940}.Debug|x64.ActiveCfg = Debug|x64\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1940}.Debug|x64.Build.0 = Debug|x64\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1940}.Release|Win32.ActiveCfg = Release|Win32\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1940}.Release|Win32.Build.0 = Release|Win32\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1940}.Release|x64.ActiveCfg = Release|x64\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1940}.Release|x64.Build.0 = Release|x64\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1942}.Debug|Win32.ActiveCfg = Debug|Win32\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1942}.Debug|Win32.Build.0 = Debug|Win32\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1942}.Debug|x64.ActiveCfg = Debug|x64\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1942}.Debug|x64.Build.0 = Debug|x64\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1942}.Release|Win32.ActiveCfg = Release|Win32\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1942}.Release|Win32.Build.0 = Release|Win32\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1942}.Release|x64.ActiveCfg = Release|x64\r
++ {4CFB235E-56AE-4BF2-BE67-8FD4AF5F1942}.Release|x64.Build.0 = Release|x64\r
++ EndGlobalSection\r
++ GlobalSection(SolutionProperties) = preSolution\r
++ HideSolutionNode = FALSE\r
++ EndGlobalSection\r
++EndGlobal\r
+diff --git a/libs/xmlrpc-c/Windows/dll/xmlrpc.vcproj b/libs/xmlrpc-c/Windows/dll/xmlrpc.vcproj
+new file mode 100644
+index 0000000..bd1515e
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/xmlrpc.vcproj
+@@ -0,0 +1,479 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="libxmlrpc"\r
++ ProjectGUID="{226AB06F-60CA-4B21-9040-C6ECC0581522}"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ShowProgress="0"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ShowProgress="0"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc"\r
++ >\r
++ <File\r
++ RelativePath="..\..\src\double.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\parse_datetime.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\parse_value.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\resource.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\trace.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\version.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_array.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_base64.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_build.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_data.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_datetime.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_decompose.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_expat.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_parse.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_serialize.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_string.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_struct.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\c_util.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\config.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\double.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\parse_datetime.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\parse_value.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\registry.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\string_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\system_method.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\util.h"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/xmlrpc__.vcproj b/libs/xmlrpc-c/Windows/dll/xmlrpc__.vcproj
+new file mode 100644
+index 0000000..7f2732b
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/xmlrpc__.vcproj
+@@ -0,0 +1,1296 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="libxmlrpc++"\r
++ ProjectGUID="{3E7064F3-6200-4C39-85BE-775931D21828}"\r
++ RootNamespace="xmlrpc++"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/curl_transport,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport,../../.."\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ RuntimeTypeInfo="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib Wininet.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).dll"\r
++ IgnoreDefaultLibraryNames=""\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/curl_transport,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport,../../.."\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB;$(NOINHERIT)"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ RuntimeTypeInfo="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib Wininet.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).dll"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/curl_transport,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport,../../.."\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ RuntimeTypeInfo="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib Wininet.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).dll"\r
++ IgnoreDefaultLibraryNames=""\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/curl_transport,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport,../../.."\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB;$(NOINHERIT)"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ RuntimeTypeInfo="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib Wininet.lib"\r
++ OutputFile="$(OutDir)\$(ProjectName).dll"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc"\r
++ >\r
++ <File\r
++ RelativePath="..\..\src\cpp\base64.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\client.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\client_simple.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\curl.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\env_wrap.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\fault.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\girerr.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\girmem.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\libwww.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\outcome.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\packetsocket.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\param_list.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\pstream.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\util\pthreadx_win32.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\registry.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\server_abyss.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\server_cgi.cpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\server_pstream.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\server_pstream_conn.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\value.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\wininet.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\xml.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\wininet_transport\xmlrpc_wininet_transport.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\XmlRpcCpp.cpp"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base64.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\client.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\client_simple.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\client_transport.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\cpp\env_wrap.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\girerr.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\girmem.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\oldcppwrapper.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\packetsocket.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\registry.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\server_abyss.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\server_cgi.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\server_pstream.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\timeout.hpp"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\xml.hpp"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/xmlrpc_abyss.vcproj b/libs/xmlrpc-c/Windows/dll/xmlrpc_abyss.vcproj
+new file mode 100644
+index 0000000..366acde
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/xmlrpc_abyss.vcproj
+@@ -0,0 +1,1342 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="libxmlrpc_abyss"\r
++ ProjectGUID="{20A8F64B-F738-4D32-A798-A65AD8291541}"\r
++ RootNamespace="xmlrpc_abyss"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="..\..\,..\..\include,..\..\lib\util\include"\r
++ PreprocessorDefinitions="WIN32;_DEBUG;_LIB;ABYSS_WIN32;_THREAD"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalOptions="ws2_32.lib"\r
++ GenerateManifest="false"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="..\..\,..\..\include,..\..\lib\util\include"\r
++ PreprocessorDefinitions="WIN32;NDEBUG;_LIB;ABYSS_WIN32;_THREAD"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalOptions="ws2_32.lib"\r
++ GenerateManifest="false"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="..\..\,..\..\include,..\..\lib\util\include"\r
++ PreprocessorDefinitions="WIN32;_DEBUG;_LIB;ABYSS_WIN32;_THREAD"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalOptions="ws2_32.lib"\r
++ GenerateManifest="false"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="..\..\,..\..\include,..\..\lib\util\include"\r
++ PreprocessorDefinitions="WIN32;NDEBUG;_LIB;ABYSS_WIN32;_THREAD"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalOptions="ws2_32.lib"\r
++ GenerateManifest="false"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
++ >\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\channel.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\chanswitch.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\conf.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\conn.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\data.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\date.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\file.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\handler.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\http.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\init.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\response.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\server.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\session.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\socket.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\socket_openssl.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\socket_unix.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\socket_win.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\thread_fork.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\thread_pthread.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ ExcludedFromBuild="true"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\thread_windows.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\token.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\trace.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\abyss.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\abyss_info.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\abyss_winsock.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\channel.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\chanswitch.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\conn.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\data.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\date.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\file.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\handler.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\http.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\server.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\session.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\socket.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\socket_win.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\thread.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\token.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\abyss\src\trace.h"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/xmlrpc_client.vcproj b/libs/xmlrpc-c/Windows/dll/xmlrpc_client.vcproj
+new file mode 100644
+index 0000000..b8424f2
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/xmlrpc_client.vcproj
+@@ -0,0 +1,425 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="libxmlrpc_client"\r
++ ProjectGUID="{28BB53D9-D487-41DF-BBB3-FDB5846D1630}"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="wininet.lib"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="wininet.lib"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="wininet.lib"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="wininet.lib"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc"\r
++ >\r
++ <File\r
++ RelativePath="..\..\lib\util\pthreadx_win32.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_client.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_client_global.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_server_info.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\wininet_transport\xmlrpc_wininet_transport.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\c_util.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\client.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\client_global.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\config.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\server.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\string_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\util.h"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/xmlrpc_server.vcproj b/libs/xmlrpc-c/Windows/dll/xmlrpc_server.vcproj
+new file mode 100644
+index 0000000..d1d7ff5
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/xmlrpc_server.vcproj
+@@ -0,0 +1,413 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="libxmlrpc_server"\r
++ ProjectGUID="{74B67128-BC84-4BCB-A256-9286B6371552}"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc"\r
++ >\r
++ <File\r
++ RelativePath="..\..\src\method.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\registry.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\system_method.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\c_util.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\config.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\method.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\server.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\string_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\src\system_method.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\util.h"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/xmlrpc_server_abyss.vcproj b/libs/xmlrpc-c/Windows/dll/xmlrpc_server_abyss.vcproj
+new file mode 100644
+index 0000000..4c71bc4
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/xmlrpc_server_abyss.vcproj
+@@ -0,0 +1,401 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="libxmlrpc_server_abyss"\r
++ ProjectGUID="{E98186CB-F1B0-40A6-87A5-77B13A3F1600}"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc"\r
++ >\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_server_abyss.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\c_util.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\config.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\server.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\server_abyss.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\string_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\util.h"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/xmlrpc_server_cgi.vcproj b/libs/xmlrpc-c/Windows/dll/xmlrpc_server_cgi.vcproj
+new file mode 100644
+index 0000000..2eb2fae
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/xmlrpc_server_cgi.vcproj
+@@ -0,0 +1,401 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="libxmlrpc_server_cgi"\r
++ ProjectGUID="{A2AAAF37-F382-4A11-8D86-53B589921616}"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc"\r
++ >\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_server_cgi.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\c_util.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\config.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\server.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\server_cgi.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\string_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\util.h"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/xmlrpc_server_w32httpsys.vcproj b/libs/xmlrpc-c/Windows/dll/xmlrpc_server_w32httpsys.vcproj
+new file mode 100644
+index 0000000..3e1fab7
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/xmlrpc_server_w32httpsys.vcproj
+@@ -0,0 +1,405 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="libxmlrpc_server_w32httpsys"\r
++ ProjectGUID="{0EECB080-FC8F-4C46-9FB7-5DB22F9D1622}"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories=""C:\Program Files (x86)\Microsoft SDKs\Windows\v5.0\Include\";../../lib;../../lib/util/include;../../include;../..;../../lib/expat/xmlparse;../../lib/abyss/src;../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories=""C:\Program Files (x86)\Microsoft SDKs\Windows\v5.0\Include\";../../lib;../../lib/util/include;../../include;../..;../../lib/expat/xmlparse;../../lib/abyss/src;../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories=""C:\Program Files (x86)\Microsoft SDKs\Windows\v5.0\Include\";../../lib;../../lib/util/include;../../include;../..;../../lib/expat/xmlparse;../../lib/abyss/src;../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories=""C:\Program Files (x86)\Microsoft SDKs\Windows\v5.0\Include\";../../lib;../../lib/util/include;../../include;../..;../../lib/expat/xmlparse;../../lib/abyss/src;../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc"\r
++ >\r
++ <File\r
++ RelativePath="..\..\src\xmlrpc_server_w32httpsys.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\c_util.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\config.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\server.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\server_cgi.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\server_w32httpsys.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\string_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\util.h"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/xmlrpc_util.vcproj b/libs/xmlrpc-c/Windows/dll/xmlrpc_util.vcproj
+new file mode 100644
+index 0000000..1f7670f
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/xmlrpc_util.vcproj
+@@ -0,0 +1,449 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="libxmlrpc_util"\r
++ ProjectGUID="{29FBABB6-E36A-4559-9514-B3DAF6AE1416}"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ ShowProgress="0"\r
++ GenerateManifest="false"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ MapExports="true"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ ShowProgress="0"\r
++ GenerateManifest="false"\r
++ MapExports="true"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ ShowProgress="0"\r
++ GenerateManifest="false"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ MapExports="true"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="../../lib,../../lib/util/include,../../include,../..,../../lib/expat/xmlparse,../../lib/abyss/src,../../lib/wininet_transport"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_LIB;ABYSS_WIN32;CURL_STATICLIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ AdditionalDependencies="ws2_32.lib"\r
++ ShowProgress="0"\r
++ GenerateManifest="false"\r
++ MapExports="true"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc"\r
++ >\r
++ <File\r
++ RelativePath="..\..\lib\libutil\asprintf.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\libutil\base64.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\libutil\error.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\libutil\make_printable.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\libutil\memblock.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\libutil\select.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\libutil\sleep.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\libutil\string_number.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\libutil\time.c"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\libutil\utf8.c"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl"\r
++ >\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\base64_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\select_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\sleep_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\string_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\string_number.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\time_int.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\include\xmlrpc-c\util.h"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/xmlrpc_xmlparse.vcproj b/libs/xmlrpc-c/Windows/dll/xmlrpc_xmlparse.vcproj
+new file mode 100644
+index 0000000..2254c3e
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/xmlrpc_xmlparse.vcproj
+@@ -0,0 +1,417 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="libxmlrpc_xmlparse"\r
++ ProjectGUID="{40B0756D-AFEE-4A38-9F38-A372CE431404}"\r
++ RootNamespace="xmlparse"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="..\..\lib\expat\xmltok;..\..\lib\expat\xmlwf;..\..\lib\util\include;..\..\include;..\..\"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;XML_DTD;_LIB;$(NOINHERIT)"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ Profile="false"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="..\..\lib\expat\xmltok,..\..\lib\expat\xmlwf,..\..\,..\..\lib\util\include,..\..\include"\r
++ PreprocessorDefinitions="WIN32;_WINDOWS;XML_DTD;_LIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="..\..\lib\expat\xmltok;..\..\lib\expat\xmlwf;..\..\lib\util\include;..\..\include;..\..\"\r
++ PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;XML_DTD;_LIB;$(NOINHERIT)"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ Profile="false"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="..\..\lib\expat\xmltok,..\..\lib\expat\xmlwf,..\..\,..\..\lib\util\include,..\..\include"\r
++ PreprocessorDefinitions="WIN32;_WINDOWS;XML_DTD;_LIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;for;f90"\r
++ >\r
++ <File\r
++ RelativePath="..\..\lib\expat\xmlparse\xmlparse.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl;fi;fd"\r
++ >\r
++ <File\r
++ RelativePath="..\..\lib\expat\xmlparse\xmlparse.h"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Resource Files"\r
++ Filter="ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
+diff --git a/libs/xmlrpc-c/Windows/dll/xmlrpc_xmltok.vcproj b/libs/xmlrpc-c/Windows/dll/xmlrpc_xmltok.vcproj
+new file mode 100644
+index 0000000..0e2c4b7
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/dll/xmlrpc_xmltok.vcproj
+@@ -0,0 +1,483 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioProject\r
++ ProjectType="Visual C++"\r
++ Version="9,00"\r
++ Name="libxmlrpc_xmltok"\r
++ ProjectGUID="{BD9F6041-A272-462D-8C41-87CEF1F11408}"\r
++ RootNamespace="xmltok"\r
++ TargetFrameworkVersion="0"\r
++ >\r
++ <Platforms>\r
++ <Platform\r
++ Name="Win32"\r
++ />\r
++ <Platform\r
++ Name="x64"\r
++ />\r
++ </Platforms>\r
++ <ToolFiles>\r
++ </ToolFiles>\r
++ <Configurations>\r
++ <Configuration\r
++ Name="Debug|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="..\..;..\..\lib\util\include;..\..\include"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;XML_DTD;XML_NS;_LIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="4"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|Win32"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="..\..,..\..\lib\util\include,..\..\include"\r
++ PreprocessorDefinitions="NDEBUG;XML_NS;WIN32;_WINDOWS;XML_DTD;_LIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Debug|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="0"\r
++ AdditionalIncludeDirectories="..\..;..\..\lib\util\include;..\..\include"\r
++ PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;XML_DTD;XML_NS;_LIB"\r
++ MinimalRebuild="true"\r
++ BasicRuntimeChecks="3"\r
++ RuntimeLibrary="3"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ DebugInformationFormat="3"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="_DEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ GenerateDebugInformation="true"\r
++ ProgramDatabaseFile="$(OutDir)\$(ProjectName).pdb"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ <Configuration\r
++ Name="Release|x64"\r
++ OutputDirectory="..\..\bin\$(ConfigurationName)-$(PlatformName)\"\r
++ IntermediateDirectory="..\..\temp\$(PlatformName)\$(ConfigurationName)\$(ProjectName)\"\r
++ ConfigurationType="2"\r
++ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
++ UseOfMFC="0"\r
++ ATLMinimizesCRunTimeLibraryUsage="false"\r
++ CharacterSet="2"\r
++ >\r
++ <Tool\r
++ Name="VCPreBuildEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCCustomBuildTool"\r
++ />\r
++ <Tool\r
++ Name="VCXMLDataGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCWebServiceProxyGeneratorTool"\r
++ />\r
++ <Tool\r
++ Name="VCMIDLTool"\r
++ TargetEnvironment="3"\r
++ />\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ Optimization="2"\r
++ InlineFunctionExpansion="1"\r
++ AdditionalIncludeDirectories="..\..,..\..\lib\util\include,..\..\include"\r
++ PreprocessorDefinitions="NDEBUG;XML_NS;WIN32;_WINDOWS;XML_DTD;_LIB"\r
++ StringPooling="true"\r
++ RuntimeLibrary="2"\r
++ EnableFunctionLevelLinking="true"\r
++ PrecompiledHeaderFile="$(IntDir)\$(ProjectName).pch"\r
++ AssemblerListingLocation="$(IntDir)\"\r
++ ObjectFile="$(IntDir)\"\r
++ ProgramDataBaseFileName="$(IntDir)\"\r
++ WarningLevel="3"\r
++ SuppressStartupBanner="true"\r
++ />\r
++ <Tool\r
++ Name="VCManagedResourceCompilerTool"\r
++ />\r
++ <Tool\r
++ Name="VCResourceCompilerTool"\r
++ PreprocessorDefinitions="NDEBUG"\r
++ Culture="1033"\r
++ />\r
++ <Tool\r
++ Name="VCPreLinkEventTool"\r
++ />\r
++ <Tool\r
++ Name="VCLinkerTool"\r
++ ImportLibrary="$(OutDir)\$(ProjectName).lib"\r
++ TargetMachine="17"\r
++ />\r
++ <Tool\r
++ Name="VCALinkTool"\r
++ />\r
++ <Tool\r
++ Name="VCManifestTool"\r
++ />\r
++ <Tool\r
++ Name="VCXDCMakeTool"\r
++ />\r
++ <Tool\r
++ Name="VCBscMakeTool"\r
++ SuppressStartupBanner="true"\r
++ OutputFile="$(IntDir)\$(ProjectName).bsc"\r
++ />\r
++ <Tool\r
++ Name="VCFxCopTool"\r
++ />\r
++ <Tool\r
++ Name="VCAppVerifierTool"\r
++ />\r
++ <Tool\r
++ Name="VCPostBuildEventTool"\r
++ />\r
++ </Configuration>\r
++ </Configurations>\r
++ <References>\r
++ </References>\r
++ <Files>\r
++ <Filter\r
++ Name="Source Files"\r
++ Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;for;f90"\r
++ >\r
++ <File\r
++ RelativePath="..\..\lib\expat\xmltok\xmlrole.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\expat\xmltok\xmltok.c"\r
++ >\r
++ <FileConfiguration\r
++ Name="Debug|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|Win32"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Debug|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ <FileConfiguration\r
++ Name="Release|x64"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""\r
++ PreprocessorDefinitions=""\r
++ />\r
++ </FileConfiguration>\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Header Files"\r
++ Filter="h;hpp;hxx;hm;inl;fi;fd"\r
++ >\r
++ <File\r
++ RelativePath="..\..\lib\expat\xmltok\asciitab.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\expat\xmltok\iasciitab.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\expat\xmltok\latin1tab.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\expat\xmltok\nametab.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\expat\xmltok\utf8tab.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\expat\xmltok\xmldef.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\expat\xmltok\xmlrole.h"\r
++ >\r
++ </File>\r
++ <File\r
++ RelativePath="..\..\lib\expat\xmltok\xmltok.h"\r
++ >\r
++ </File>\r
++ </Filter>\r
++ <Filter\r
++ Name="Resource Files"\r
++ Filter="ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"\r
++ >\r
++ </Filter>\r
++ </Files>\r
++ <Globals>\r
++ </Globals>\r
++</VisualStudioProject>\r
diff --git a/libs/xmlrpc-c/Windows/gennmtab.2008.vcproj b/libs/xmlrpc-c/Windows/gennmtab.2008.vcproj
deleted file mode 100644
index c4460dd..0000000
- </Globals>\r
-</VisualStudioProject>\r
diff --git a/libs/xmlrpc-c/Windows/mkvers.bat b/libs/xmlrpc-c/Windows/mkvers.bat
-index 2f6ec1b..2ff46e0 100644
+index 2f6ec1b..3d2fb7f 100644
--- a/libs/xmlrpc-c/Windows/mkvers.bat
+++ b/libs/xmlrpc-c/Windows/mkvers.bat
-@@ -1,53 +1,53 @@
--@if EXIST ..\version.h goto SHOW\r
+@@ -1,9 +1,9 @@
+ @if EXIST ..\version.h goto SHOW\r
-@if NOT EXIST ..\Makefile.version goto ERR1\r
--@if NOT EXIST mkvers1.bat goto ERR2\r
--@echo updating/creating ..\version.h ...\r
--@set TEMP1=1\r
++@if NOT EXIST ..\version.mk goto ERR1\r
+ @if NOT EXIST mkvers1.bat goto ERR2\r
+ @echo updating/creating ..\version.h ...\r
+ @set TEMP1=1\r
-@for /F "skip=8 tokens=3" %%i in (..\Makefile.version) do @call mkvers1 %%i\r
--@if "%TEMPX1%." == "." goto NOX1\r
--@if "%TEMPX2%." == "." goto NOX1\r
--@if "%TEMPX3%." == "." goto NOX1\r
--@set TEMP1=..\version.h\r
--@echo #ifndef XMLRPC_C_VERSION_INCLUDED > %TEMP1%\r
--@echo #define XMLRPC_C_VERSION_INCLUDED >> %TEMP1%\r
--@echo /* generated by Windows/mkvers.bat on %DATE% ... */ >> %TEMP1%\r
++@for /F "skip=8 tokens=3" %%i in (..\version.mk) do @call mkvers1 %%i\r
+ @if "%TEMPX1%." == "." goto NOX1\r
+ @if "%TEMPX2%." == "." goto NOX1\r
+ @if "%TEMPX3%." == "." goto NOX1\r
+@@ -11,7 +11,7 @@
+ @echo #ifndef XMLRPC_C_VERSION_INCLUDED > %TEMP1%\r
+ @echo #define XMLRPC_C_VERSION_INCLUDED >> %TEMP1%\r
+ @echo /* generated by Windows/mkvers.bat on %DATE% ... */ >> %TEMP1%\r
-@echo #define XMLRPC_C_VERSION "Xmlrpc-c %TEMPX1%.%TEMPX2%.%TEMPX3%" >> %TEMP1%\r
--@echo #define XMLRPC_VERSION_MAJOR %TEMPX1% >> %TEMP1%\r
--@echo #define XMLRPC_VERSION_MINOR %TEMPX2% >> %TEMP1%\r
--@echo #define XMLRPC_VERSION_POINT %TEMPX3% >> %TEMP1%\r
--@echo #endif >> %TEMP1%\r
--type %TEMP1%\r
--@echo ..\version.h set to the above ...\r
--@set TEMP1=\r
--@set TEMPX1=\r
--@set TEMPX2=\r
--@set TEMPX3=\r
--@goto END \r
--\r
--:NOX1\r
--@echo Some error occurred in the batch process ...\r
--@goto NOVER\r
--\r
--:NOVER\r
--@echo Failed to create ..\version.h .\r
--@pause\r
--@goto END\r
--\r
--\r
--:ERR1\r
++@echo #define XMLRPC_C_VERSION "%TEMPX1%.%TEMPX2%.%TEMPX3%" >> %TEMP1%\r
+ @echo #define XMLRPC_VERSION_MAJOR %TEMPX1% >> %TEMP1%\r
+ @echo #define XMLRPC_VERSION_MINOR %TEMPX2% >> %TEMP1%\r
+ @echo #define XMLRPC_VERSION_POINT %TEMPX3% >> %TEMP1%\r
+@@ -35,7 +35,7 @@ type %TEMP1%
+ \r
+ \r
+ :ERR1\r
-@echo Can not locate ..\Makefile.version ... check name, location ...\r
--@pause\r
--@goto END\r
--:ERR2\r
--@echo Can not locate mkvers1.bat ... check name, location ...\r
--@pause\r
--@goto END\r
--\r
--:SHOW\r
--@echo ..\version.h already exist, with version ...\r
--@type ..\version.h\r
--@echo Delete this file if you wish to redo it ...\r
--@pause\r
--@goto END\r
--\r
--:END\r
-+@if EXIST ..\version.h goto SHOW
-+@if NOT EXIST ..\version.mk goto ERR1
-+@if NOT EXIST mkvers1.bat goto ERR2
-+@echo updating/creating ..\version.h ...
-+@set TEMP1=1
-+@for /F "skip=8 tokens=3" %%i in (..\version.mk) do @call mkvers1 %%i
-+@if "%TEMPX1%." == "." goto NOX1
-+@if "%TEMPX2%." == "." goto NOX1
-+@if "%TEMPX3%." == "." goto NOX1
-+@set TEMP1=..\version.h
-+@echo #ifndef XMLRPC_C_VERSION_INCLUDED > %TEMP1%
-+@echo #define XMLRPC_C_VERSION_INCLUDED >> %TEMP1%
-+@echo /* generated by Windows/mkvers.bat on %DATE% ... */ >> %TEMP1%
-+@echo #define XMLRPC_C_VERSION "%TEMPX1%.%TEMPX2%.%TEMPX3%" >> %TEMP1%
-+@echo #define XMLRPC_VERSION_MAJOR %TEMPX1% >> %TEMP1%
-+@echo #define XMLRPC_VERSION_MINOR %TEMPX2% >> %TEMP1%
-+@echo #define XMLRPC_VERSION_POINT %TEMPX3% >> %TEMP1%
-+@echo #endif >> %TEMP1%
-+type %TEMP1%
-+@echo ..\version.h set to the above ...
-+@set TEMP1=
-+@set TEMPX1=
-+@set TEMPX2=
-+@set TEMPX3=
-+@goto END
-+
-+:NOX1
-+@echo Some error occurred in the batch process ...
-+@goto NOVER
-+
-+:NOVER
-+@echo Failed to create ..\version.h .
-+@pause
-+@goto END
-+
-+
-+:ERR1
-+@echo Can not locate ..\version.mk ... check name, location ...
-+@pause
-+@goto END
-+:ERR2
-+@echo Can not locate mkvers1.bat ... check name, location ...
-+@pause
-+@goto END
-+
-+:SHOW
-+@echo ..\version.h already exist, with version ...
-+@type ..\version.h
-+@echo Delete this file if you wish to redo it ...
-+@pause
-+@goto END
-+
-+:END
++@echo Can not locate ..\version.mk ... check name, location ...\r
+ @pause\r
+ @goto END\r
+ :ERR2\r
diff --git a/libs/xmlrpc-c/Windows/query_meerkat.dsp b/libs/xmlrpc-c/Windows/query_meerkat.dsp
deleted file mode 100644
index 2ffb15b..0000000
-# End Target
-# End Project
diff --git a/libs/xmlrpc-c/Windows/rpctest.dsp b/libs/xmlrpc-c/Windows/rpctest.dsp
-index 159692c..7a7b350 100644
+index 159692c..aa8fc4c 100644
--- a/libs/xmlrpc-c/Windows/rpctest.dsp
+++ b/libs/xmlrpc-c/Windows/rpctest.dsp
-@@ -1,210 +1,218 @@
--# Microsoft Developer Studio Project File - Name="rpctest" - Package Owner=<4>\r
--# Microsoft Developer Studio Generated Build File, Format Version 6.00\r
--# ** DO NOT EDIT **\r
--\r
--# TARGTYPE "Win32 (x86) Console Application" 0x0103\r
--\r
--CFG=rpctest - Win32 Debug\r
--!MESSAGE This is not a valid makefile. To build this project using NMAKE,\r
--!MESSAGE use the Export Makefile command and run\r
--!MESSAGE \r
--!MESSAGE NMAKE /f "rpctest.mak".\r
--!MESSAGE \r
--!MESSAGE You can specify a configuration when running NMAKE\r
--!MESSAGE by defining the macro CFG on the command line. For example:\r
--!MESSAGE \r
--!MESSAGE NMAKE /f "rpctest.mak" CFG="rpctest - Win32 Debug"\r
--!MESSAGE \r
--!MESSAGE Possible choices for configuration are:\r
--!MESSAGE \r
--!MESSAGE "rpctest - Win32 Release" (based on "Win32 (x86) Console Application")\r
--!MESSAGE "rpctest - Win32 Debug" (based on "Win32 (x86) Console Application")\r
--!MESSAGE \r
--\r
--# Begin Project\r
--# PROP AllowPerConfigDependencies 0\r
--CPP=cl.exe\r
--RSC=rc.exe\r
--\r
--!IF "$(CFG)" == "rpctest - Win32 Release"\r
--\r
--# PROP BASE Use_MFC 0\r
--# PROP BASE Use_Debug_Libraries 0\r
--# PROP BASE Output_Dir "Release"\r
--# PROP BASE Intermediate_Dir "Release"\r
--# PROP BASE Target_Dir ""\r
--# PROP Use_MFC 0\r
--# PROP Use_Debug_Libraries 0\r
--# PROP Output_Dir "Release\rpctest"\r
--# PROP Intermediate_Dir "Release\rpctest"\r
--# PROP Ignore_Export_Lib 0\r
--# PROP Target_Dir ""\r
--# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c\r
--# ADD CPP /nologo /MT /W3 /GX /O2 /I ".." /I "../include" /I "../lib/util/include" /I "../.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "ABYSS_WIN32" /YX /FD /c\r
--# ADD BASE RSC /l 0x409 /d "NDEBUG"\r
--# ADD RSC /l 0x409 /d "NDEBUG"\r
--BSC32=bscmake.exe\r
--# ADD BASE BSC32 /nologo\r
--# ADD BSC32 /nologo\r
--LINK32=link.exe\r
--# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386\r
--# ADD LINK32 ..\lib\xmlrpc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Ws2_32.lib Wininet.lib /nologo /subsystem:console /machine:I386 /out:"..\bin\rpctest.exe"\r
--# Begin Special Build Tool\r
--SOURCE="$(InputPath)"\r
--PostBuild_Desc=Copy test files\r
--PostBuild_Cmds=if not exist ..\Bin\data md ..\Bin\data copy ..\src\test\data\*.* ..\Bin\data\r
--# End Special Build Tool\r
--\r
--!ELSEIF "$(CFG)" == "rpctest - Win32 Debug"\r
--\r
--# PROP BASE Use_MFC 0\r
--# PROP BASE Use_Debug_Libraries 1\r
--# PROP BASE Output_Dir "Debug"\r
--# PROP BASE Intermediate_Dir "Debug"\r
--# PROP BASE Target_Dir ""\r
--# PROP Use_MFC 0\r
--# PROP Use_Debug_Libraries 1\r
--# PROP Output_Dir "Debug\rpctest"\r
--# PROP Intermediate_Dir "Debug\rpctest"\r
--# PROP Ignore_Export_Lib 0\r
--# PROP Target_Dir ""\r
--# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c\r
--# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "../.." /I ".." /I "../include" /I "../lib/util/include" /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "ABYSS_WIN32" /YX /FD /GZ /c\r
--# ADD BASE RSC /l 0x409 /d "_DEBUG"\r
--# ADD RSC /l 0x409 /d "_DEBUG"\r
--BSC32=bscmake.exe\r
--# ADD BASE BSC32 /nologo\r
--# ADD BSC32 /nologo\r
--LINK32=link.exe\r
--# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept\r
--# ADD LINK32 ..\lib\xmlrpcD.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Ws2_32.lib Wininet.lib /nologo /subsystem:console /debug /machine:I386 /out:"..\bin\rpctestD.exe" /pdbtype:sept\r
--# Begin Special Build Tool\r
--SOURCE="$(InputPath)"\r
--PostBuild_Desc=Copy test files\r
--PostBuild_Cmds=if not exist ..\Bin\data md ..\Bin\data copy ..\src\test\data\*.* ..\Bin\data\r
--# End Special Build Tool\r
--\r
--!ENDIF \r
--\r
--# Begin Target\r
--\r
--# Name "rpctest - Win32 Release"\r
--# Name "rpctest - Win32 Debug"\r
--# Begin Group "Source Files"\r
--\r
--# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\abyss.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\cgi.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\client.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\util\casprintf.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\method_registry.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\parse_xml.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\serialize.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\serialize_value.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\server_abyss.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\test.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\abyss\src\token.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\value.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\xml_data.c\r
--# End Source File\r
--# End Group\r
--# Begin Group "Header Files"\r
--\r
--# PROP Default_Filter "h;hpp;hxx;hm;inl"\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\client.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\parse_xml.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\serialize.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\serialize_value.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\server_abyss.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\test.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\value.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\test\xml_data.h\r
--# End Source File\r
--# End Group\r
--# Begin Group "Resource Files"\r
--\r
--# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
--# End Group\r
--# Begin Group "TestFiles"\r
--\r
--# PROP Default_Filter ""\r
--# Begin Source File\r
--\r
--SOURCE="..\src\testdata\http-req-simple.txt"\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\testdata\req_no_params.xml\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\testdata\req_out_of_order.xml\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\testdata\req_value_name.xml\r
--# End Source File\r
--# End Group\r
--# End Target\r
--# End Project\r
-+# Microsoft Developer Studio Project File - Name="rpctest" - Package Owner=<4>
-+# Microsoft Developer Studio Generated Build File, Format Version 6.00
-+# ** DO NOT EDIT **
+@@ -143,6 +143,14 @@ SOURCE=..\src\test\value.c
+ # End Source File\r
+ # Begin Source File\r
+ \r
++SOURCE=..\src\test\value_datetime.c\r
++# End Source File\r
++# Begin Source File\r
++\r
++SOURCE=..\src\test\value_datetime.h\r
++# End Source File\r
++# Begin Source File\r
++\r
+ SOURCE=..\src\test\xml_data.c\r
+ # End Source File\r
+ # End Group\r
+diff --git a/libs/xmlrpc-c/Windows/socketpair.cpp b/libs/xmlrpc-c/Windows/socketpair.cpp
+new file mode 100644
+index 0000000..77310eb
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/socketpair.cpp
+@@ -0,0 +1,71 @@
++#include <winsock2.h>
+
-+# TARGTYPE "Win32 (x86) Console Application" 0x0103
+
-+CFG=rpctest - Win32 Debug
-+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-+!MESSAGE use the Export Makefile command and run
-+!MESSAGE
-+!MESSAGE NMAKE /f "rpctest.mak".
-+!MESSAGE
-+!MESSAGE You can specify a configuration when running NMAKE
-+!MESSAGE by defining the macro CFG on the command line. For example:
-+!MESSAGE
-+!MESSAGE NMAKE /f "rpctest.mak" CFG="rpctest - Win32 Debug"
-+!MESSAGE
-+!MESSAGE Possible choices for configuration are:
-+!MESSAGE
-+!MESSAGE "rpctest - Win32 Release" (based on "Win32 (x86) Console Application")
-+!MESSAGE "rpctest - Win32 Debug" (based on "Win32 (x86) Console Application")
-+!MESSAGE
-+
-+# Begin Project
-+# PROP AllowPerConfigDependencies 0
-+CPP=cl.exe
-+RSC=rc.exe
-+
-+!IF "$(CFG)" == "rpctest - Win32 Release"
-+
-+# PROP BASE Use_MFC 0
-+# PROP BASE Use_Debug_Libraries 0
-+# PROP BASE Output_Dir "Release"
-+# PROP BASE Intermediate_Dir "Release"
-+# PROP BASE Target_Dir ""
-+# PROP Use_MFC 0
-+# PROP Use_Debug_Libraries 0
-+# PROP Output_Dir "Release\rpctest"
-+# PROP Intermediate_Dir "Release\rpctest"
-+# PROP Ignore_Export_Lib 0
-+# PROP Target_Dir ""
-+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-+# ADD CPP /nologo /MT /W3 /GX /O2 /I ".." /I "../include" /I "../lib/util/include" /I "../.." /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "ABYSS_WIN32" /YX /FD /c
-+# ADD BASE RSC /l 0x409 /d "NDEBUG"
-+# ADD RSC /l 0x409 /d "NDEBUG"
-+BSC32=bscmake.exe
-+# ADD BASE BSC32 /nologo
-+# ADD BSC32 /nologo
-+LINK32=link.exe
-+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-+# ADD LINK32 ..\lib\xmlrpc.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Ws2_32.lib Wininet.lib /nologo /subsystem:console /machine:I386 /out:"..\bin\rpctest.exe"
-+# Begin Special Build Tool
-+SOURCE="$(InputPath)"
-+PostBuild_Desc=Copy test files
-+PostBuild_Cmds=if not exist ..\Bin\data md ..\Bin\data copy ..\src\test\data\*.* ..\Bin\data
-+# End Special Build Tool
-+
-+!ELSEIF "$(CFG)" == "rpctest - Win32 Debug"
-+
-+# PROP BASE Use_MFC 0
-+# PROP BASE Use_Debug_Libraries 1
-+# PROP BASE Output_Dir "Debug"
-+# PROP BASE Intermediate_Dir "Debug"
-+# PROP BASE Target_Dir ""
-+# PROP Use_MFC 0
-+# PROP Use_Debug_Libraries 1
-+# PROP Output_Dir "Debug\rpctest"
-+# PROP Intermediate_Dir "Debug\rpctest"
-+# PROP Ignore_Export_Lib 0
-+# PROP Target_Dir ""
-+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-+# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "../.." /I ".." /I "../include" /I "../lib/util/include" /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "ABYSS_WIN32" /YX /FD /GZ /c
-+# ADD BASE RSC /l 0x409 /d "_DEBUG"
-+# ADD RSC /l 0x409 /d "_DEBUG"
-+BSC32=bscmake.exe
-+# ADD BASE BSC32 /nologo
-+# ADD BSC32 /nologo
-+LINK32=link.exe
-+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-+# ADD LINK32 ..\lib\xmlrpcD.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Ws2_32.lib Wininet.lib /nologo /subsystem:console /debug /machine:I386 /out:"..\bin\rpctestD.exe" /pdbtype:sept
-+# Begin Special Build Tool
-+SOURCE="$(InputPath)"
-+PostBuild_Desc=Copy test files
-+PostBuild_Cmds=if not exist ..\Bin\data md ..\Bin\data copy ..\src\test\data\*.* ..\Bin\data
-+# End Special Build Tool
-+
-+!ENDIF
-+
-+# Begin Target
-+
-+# Name "rpctest - Win32 Release"
-+# Name "rpctest - Win32 Debug"
-+# Begin Group "Source Files"
-+
-+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-+# Begin Source File
-+
-+SOURCE=..\src\test\abyss.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\cgi.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\client.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\util\casprintf.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\method_registry.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\parse_xml.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\serialize.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\serialize_value.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\server_abyss.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\test.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\token.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\value.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\value_datetime.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\value_datetime.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\xml_data.c
-+# End Source File
-+# End Group
-+# Begin Group "Header Files"
-+
-+# PROP Default_Filter "h;hpp;hxx;hm;inl"
-+# Begin Source File
-+
-+SOURCE=..\src\test\client.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\parse_xml.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\serialize.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\serialize_value.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\server_abyss.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\test\test.h
-+# End Source File
-+# Begin Source File
++int
++xmlrpc_win32_socketpair(int const domain,
++ int const type,
++ int const protocol,
++ SOCKET socks[2]) {
++ bool error;
+
-+SOURCE=..\src\test\value.h
-+# End Source File
-+# Begin Source File
++ error = false; // initial value
+
-+SOURCE=..\src\test\xml_data.h
-+# End Source File
-+# End Group
-+# Begin Group "Resource Files"
++ SOCKET listener;
++ listener = socket(AF_INET, SOCK_STREAM, 0);
++ if (listener == INVALID_SOCKET)
++ error = true;
++ else {
++ struct sockaddr_in addr;
++ memset(&addr, 0, sizeof(addr));
++ addr.sin_family = AF_INET;
++ addr.sin_addr.s_addr = htonl(0x7f000001);
++ addr.sin_port = 0;
+
-+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-+# End Group
-+# Begin Group "TestFiles"
++ int rc;
++ rc = bind(listener, (const struct sockaddr*) &addr, sizeof(addr));
++ if (rc == SOCKET_ERROR)
++ error = true;
++ else {
++ int addrlen;
++ int rc;
++ addrlen = sizeof(addr); // initial value
++ rc = getsockname(listener, (struct sockaddr*) &addr, &addrlen);
++ if (rc == SOCKET_ERROR)
++ error = true;
++ else {
++ int rc;
+
-+# PROP Default_Filter ""
-+# Begin Source File
++ rc = listen(listener, 1);
++ if (rc == SOCKET_ERROR)
++ error = true;
++ else {
++ socks[0] = socket(AF_INET, SOCK_STREAM, 0);
++ if (socks[0] == INVALID_SOCKET)
++ error = true;
++ else {
++ int rc;
++ rc = connect(socks[0],
++ (const struct sockaddr*) &addr,
++ sizeof(addr));
++ if (rc == SOCKET_ERROR)
++ error = true;
++ else {
++ socks[1] = accept(listener, NULL, NULL);
++ if (socks[1] == INVALID_SOCKET)
++ error = true;
++ }
++ if (error)
++ closesocket(socks[0]);
++ }
++ }
++ }
++ }
++ closesocket(listener);
++ }
++
++ return error ? -1 : 0;
++}
+
-+SOURCE="..\src\testdata\http-req-simple.txt"
-+# End Source File
-+# Begin Source File
+
-+SOURCE=..\src\testdata\req_no_params.xml
-+# End Source File
-+# Begin Source File
+
-+SOURCE=..\src\testdata\req_out_of_order.xml
-+# End Source File
-+# Begin Source File
+
-+SOURCE=..\src\testdata\req_value_name.xml
-+# End Source File
-+# End Group
-+# End Target
-+# End Project
diff --git a/libs/xmlrpc-c/Windows/transport_config.h b/libs/xmlrpc-c/Windows/transport_config.h
deleted file mode 100644
index 2642168..0000000
-#define MUST_BUILD_LIBWWW_CLIENT 0\r
-static const char * const XMLRPC_DEFAULT_TRANSPORT =\r
-"wininet";\r
+diff --git a/libs/xmlrpc-c/Windows/transport_config_win32.h b/libs/xmlrpc-c/Windows/transport_config_win32.h
+index 54bb9b5..2642168 100644
+--- a/libs/xmlrpc-c/Windows/transport_config_win32.h
++++ b/libs/xmlrpc-c/Windows/transport_config_win32.h
+@@ -1,13 +1,13 @@
+-/* Win32 version of transport_config.h.
+-
+- For other platforms, this is generated automatically, but for Windows,
+- someone generates it manually. Nonetheless, we keep it looking as much
+- as possible like the automatically generated one to make it easier to
+- maintain (e.g. you can compare the two and see why something builds
+- differently for Windows that for some other platform).
+-*/
+-#define MUST_BUILD_WININET_CLIENT 1
+-#define MUST_BUILD_CURL_CLIENT 0
+-#define MUST_BUILD_LIBWWW_CLIENT 0
+-static const char * const XMLRPC_DEFAULT_TRANSPORT =
+-"wininet";
++/* Win32 version of transport_config.h.\r
++\r
++ For other platforms, this is generated automatically, but for Windows,\r
++ someone generates it manually. Nonetheless, we keep it looking as much\r
++ as possible like the automatically generated one to make it easier to\r
++ maintain (e.g. you can compare the two and see why something builds\r
++ differently for Windows that for some other platform).\r
++*/\r
++#define MUST_BUILD_WININET_CLIENT 1\r
++#define MUST_BUILD_CURL_CLIENT 0\r
++#define MUST_BUILD_LIBWWW_CLIENT 0\r
++static const char * const XMLRPC_DEFAULT_TRANSPORT =\r
++"wininet";\r
diff --git a/libs/xmlrpc-c/Windows/win32_config.h b/libs/xmlrpc-c/Windows/win32_config.h
-index aabf9c2..a7e7a7d 100644
+index aabf9c2..d0df55b 100644
--- a/libs/xmlrpc-c/Windows/win32_config.h
+++ b/libs/xmlrpc-c/Windows/win32_config.h
-@@ -1,38 +1,42 @@
--#ifndef XMLRPC_C_CONFIG_H_INCLUDED\r
--#define XMLRPC_C_CONFIG_H_INCLUDED\r
--\r
--/* This file, part of XML-RPC For C/C++, is meant to \r
-- define characteristics of this particular installation \r
-- that the other <xmlrpc-c/...> header files need in \r
-- order to compile correctly when #included in Xmlrpc-c\r
-- user code.\r
--\r
-- Those header files #include this one.\r
--\r
-- This file was created by a make rule.\r
--*/\r
--#define XMLRPC_HAVE_WCHAR 1\r
--#ifdef WIN32\r
-- /* SOCKET is a type defined by <winsock.h>. Anyone who\r
-- uses XMLRPC_SOCKET on a WIN32 system must #include\r
-- <winsock.h>\r
-- */\r
-- #define XMLRPC_SOCKET SOCKET\r
-- #define XMLRPC_HAVE_TIMEVAL 0\r
-- #define XMLRPC_HAVE_TIMESPEC 0\r
--#else\r
-- #define XMLRPC_SOCKET int\r
-- #define XMLRPC_HAVE_TIMEVAL 1\r
-- #define XMLRPC_HAVE_TIMESPEC 1\r
--#endif\r
--\r
--#if defined(_MSC_VER)\r
-- /* Newer MSVC has long long, but MSVC 6 does not */\r
-- #define XMLRPC_INT64 __int64\r
-- #define XMLRPC_INT32 __int32\r
--#else\r
-- #define XMLRPC_INT64 long long\r
-- #define XMLRPC_INT32 int\r
--#endif\r
--#endif\r
--\r
-+#ifndef XMLRPC_C_CONFIG_H_INCLUDED
-+#define XMLRPC_C_CONFIG_H_INCLUDED
-+
-+/* This file, part of XML-RPC For C/C++, is meant to
-+ define characteristics of this particular installation
-+ that the other <xmlrpc-c/...> header files need in
-+ order to compile correctly when #included in Xmlrpc-c
-+ user code.
-+
-+ Those header files #include this one.
-+
-+ This file was created by a make rule.
-+*/
-+#define XMLRPC_HAVE_WCHAR 1
-+#ifdef WIN32
-+ /* SOCKET is a type defined by <winsock.h>. Anyone who
-+ uses XMLRPC_SOCKET on a WIN32 system must #include
-+ <winsock.h>
-+ */
-+ #define XMLRPC_SOCKET SOCKET
-+ #define XMLRPC_HAVE_TIMEVAL 0
-+ #define XMLRPC_HAVE_TIMESPEC 0
-+ #define XMLRPC_HAVE_PTHREAD 0
-+#else
-+ #define XMLRPC_SOCKET int
-+ #define XMLRPC_HAVE_TIMEVAL 1
-+ #define XMLRPC_HAVE_TIMESPEC 1
-+ #define XMLRPC_HAVE_PTHREAD 1
-+#endif
-+
-+#if defined(_MSC_VER)
-+ /* Newer MSVC has long long, but MSVC 6 does not */
-+ #define XMLRPC_INT64 __int64
-+ #define XMLRPC_INT32 __int32
-+ #define XMLRPC_PRId64 PRId64
-+#else
-+ #define XMLRPC_INT64 long long
-+ #define XMLRPC_INT32 int
-+ #define XMLRPC_PRId64 "I64d"
-+#endif
-+#endif
-+
+@@ -20,19 +20,23 @@
+ #define XMLRPC_SOCKET SOCKET\r
+ #define XMLRPC_HAVE_TIMEVAL 0\r
+ #define XMLRPC_HAVE_TIMESPEC 0\r
++ #define XMLRPC_HAVE_PTHREAD 0\r
+ #else\r
+ #define XMLRPC_SOCKET int\r
+ #define XMLRPC_HAVE_TIMEVAL 1\r
+ #define XMLRPC_HAVE_TIMESPEC 1\r
++ #define XMLRPC_HAVE_PTHREAD 1\r
+ #endif\r
+ \r
+ #if defined(_MSC_VER)\r
+ /* Newer MSVC has long long, but MSVC 6 does not */\r
+ #define XMLRPC_INT64 __int64\r
+ #define XMLRPC_INT32 __int32\r
++ #define XMLRPC_PRId64 PRId64\r
+ #else\r
+ #define XMLRPC_INT64 long long\r
+ #define XMLRPC_INT32 int\r
++ #define XMLRPC_PRId64 "I64d"\r
+ #endif\r
+ #endif\r
+ \r
diff --git a/libs/xmlrpc-c/Windows/xmlparse.2008.vcproj b/libs/xmlrpc-c/Windows/xmlparse.2008.vcproj
deleted file mode 100644
index 15adb11..0000000
-</Project>
\ No newline at end of file
diff --git a/libs/xmlrpc-c/Windows/xmlrpc.dsp b/libs/xmlrpc-c/Windows/xmlrpc.dsp
-index 15d20f0..ce96807 100644
+index 15d20f0..a85ad1d 100644
--- a/libs/xmlrpc-c/Windows/xmlrpc.dsp
+++ b/libs/xmlrpc-c/Windows/xmlrpc.dsp
-@@ -1,469 +1,481 @@
--# Microsoft Developer Studio Project File - Name="xmlrpc" - Package Owner=<4>\r
--# Microsoft Developer Studio Generated Build File, Format Version 6.00\r
--# ** DO NOT EDIT **\r
--\r
--# TARGTYPE "Win32 (x86) Static Library" 0x0104\r
--\r
--CFG=xmlrpc - Win32 Debug\r
--!MESSAGE This is not a valid makefile. To build this project using NMAKE,\r
--!MESSAGE use the Export Makefile command and run\r
--!MESSAGE \r
--!MESSAGE NMAKE /f "xmlrpc.mak".\r
--!MESSAGE \r
--!MESSAGE You can specify a configuration when running NMAKE\r
--!MESSAGE by defining the macro CFG on the command line. For example:\r
--!MESSAGE \r
--!MESSAGE NMAKE /f "xmlrpc.mak" CFG="xmlrpc - Win32 Debug"\r
--!MESSAGE \r
--!MESSAGE Possible choices for configuration are:\r
--!MESSAGE \r
--!MESSAGE "xmlrpc - Win32 Release" (based on "Win32 (x86) Static Library")\r
--!MESSAGE "xmlrpc - Win32 Debug" (based on "Win32 (x86) Static Library")\r
--!MESSAGE \r
--\r
--# Begin Project\r
--# PROP AllowPerConfigDependencies 0\r
--CPP=cl.exe\r
--RSC=rc.exe\r
--\r
--!IF "$(CFG)" == "xmlrpc - Win32 Release"\r
--\r
--# PROP BASE Use_MFC 0\r
--# PROP BASE Use_Debug_Libraries 0\r
--# PROP BASE Output_Dir "Release"\r
--# PROP BASE Intermediate_Dir "Release"\r
--# PROP BASE Target_Dir ""\r
--# PROP Use_MFC 0\r
--# PROP Use_Debug_Libraries 0\r
--# PROP Output_Dir "Release\xmlrpc"\r
--# PROP Intermediate_Dir "Release\xmlrpc"\r
--# PROP Target_Dir ""\r
--LINK32=link.exe -lib\r
--MTL=midl.exe\r
--# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c\r
--# ADD CPP /nologo /MT /W3 /GX /O2 /I "../lib" /I "../lib/util/include" /I "../include" /I ".." /I "../lib/expat/xmlparse" /I "../lib/abyss/src" /I "../lib/wininet_transport" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "ABYSS_WIN32" /D "CURL_STATICLIB" /YX /FD /c\r
--# ADD BASE RSC /l 0x409 /d "NDEBUG"\r
--# ADD RSC /l 0x409 /d "NDEBUG"\r
--BSC32=bscmake.exe\r
--# ADD BASE BSC32 /nologo\r
--# ADD BSC32 /nologo\r
--LIB32=link.exe -lib\r
--# ADD BASE LIB32 /nologo\r
--# ADD LIB32 /nologo /out:"..\lib\xmlrpc.lib"\r
--\r
--!ELSEIF "$(CFG)" == "xmlrpc - Win32 Debug"\r
--\r
--# PROP BASE Use_MFC 0\r
--# PROP BASE Use_Debug_Libraries 1\r
--# PROP BASE Output_Dir "Debug"\r
--# PROP BASE Intermediate_Dir "Debug"\r
--# PROP BASE Target_Dir ""\r
--# PROP Use_MFC 0\r
--# PROP Use_Debug_Libraries 1\r
--# PROP Output_Dir "Debug\xmlrpc"\r
--# PROP Intermediate_Dir "Debug\xmlrpc"\r
--# PROP Target_Dir ""\r
--LINK32=link.exe -lib\r
--MTL=midl.exe\r
--# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c\r
--# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "../lib" /I "../lib/util/include" /I "../include" /I ".." /I "../lib/expat/xmlparse" /I "../lib/abyss/src" /I "../lib/wininet_transport" /D "_DEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "ABYSS_WIN32" /D "CURL_STATICLIB" /YX /FD /GZ /c\r
--# ADD BASE RSC /l 0x409 /d "_DEBUG"\r
--# ADD RSC /l 0x409 /d "_DEBUG"\r
--BSC32=bscmake.exe\r
--# ADD BASE BSC32 /nologo\r
--# ADD BSC32 /nologo\r
--LIB32=link.exe -lib\r
--# ADD BASE LIB32 /nologo\r
--# ADD LIB32 /nologo /out:"..\lib\xmlrpcD.lib"\r
--\r
--!ENDIF \r
--\r
--# Begin Target\r
--\r
--# Name "xmlrpc - Win32 Release"\r
--# Name "xmlrpc - Win32 Debug"\r
--# Begin Group "Source Files"\r
--\r
--# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc"\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\libutil\asprintf.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\libutil\error.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\libutil\make_printable.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\libutil\memblock.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\method.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\util\pthreadx_win32.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\parse_value.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\registry.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\resource.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\libutil\select.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\libutil\sleep.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\system_method.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\libutil\time.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\trace.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\version.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\libutil\utf8.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\double.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_array.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_authcookie.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_base64.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_build.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_client.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_client_global.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_server_info.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\curl_transport\xmlrpc_curl_transport.c\r
--\r
--!IF "$(CFG)" == "xmlrpc - Win32 Release"\r
--\r
--# ADD CPP /I "." /I "..\..\curl\include"\r
--# PROP Exclude_From_Build 1\r
--\r
--!ELSEIF "$(CFG)" == "xmlrpc - Win32 Debug"\r
--\r
--# ADD CPP /I "." /I "..\..\curl\include"\r
--# PROP Exclude_From_Build 1\r
--\r
--!ENDIF \r
--\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_data.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_datetime.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_decompose.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_expat.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_libxml2.c\r
--# PROP Exclude_From_Build 1\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_parse.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_serialize.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_server_abyss.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_server_w32httpsys.c\r
--# PROP Exclude_From_Build 1\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_string.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\xmlrpc_struct.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\wininet_transport\xmlrpc_wininet_transport.c\r
--# End Source File\r
--# End Group\r
--# Begin Group "Header Files"\r
--\r
--# PROP Default_Filter "h;hpp;hxx;hm;inl"\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\abyss\src\http.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE="..\include\xmlrpc-c\abyss.h"\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\abyss\src\abyss_info.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE="..\include\xmlrpc-c\abyss_winsock.h"\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE="..\include\xmlrpc-c\base.h"\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE="..\include\xmlrpc-c\base_int.h"\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\util\include\bool.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE="..\include\xmlrpc-c\c_util.h"\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\util\include\c_util.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\util\include\casprintf.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\abyss\src\channel.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\abyss\src\chanswitch.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE="..\include\xmlrpc-c\client.h"\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE="..\include\xmlrpc-c\client_global.h"\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE="..\include\xmlrpc-c\client_int.h"\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE="..\include\xmlrpc-c\config.h"\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\abyss\src\conn.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\abyss\src\date.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\abyss\src\file.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\util\include\girmath.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\abyss\src\handler.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\util\include\inline.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\util\include\linklist.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\util\include\mallocvar.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\double.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\method.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\util\include\pthreadx.h\r
--# End Source File\r
--# Begin Source File\r
+@@ -91,6 +91,10 @@ SOURCE=..\lib\libutil\asprintf.c
+ # End Source File\r
+ # Begin Source File\r
+ \r
++SOURCE=..\lib\libutil\base64.c\r
++# End Source File\r
++# Begin Source File\r
++\r
+ SOURCE=..\lib\libutil\error.c\r
+ # End Source File\r
+ # Begin Source File\r
+@@ -111,6 +115,10 @@ SOURCE=..\lib\util\pthreadx_win32.c
+ # End Source File\r
+ # Begin Source File\r
+ \r
++SOURCE=..\src\parse_datetime.c\r
++# End Source File\r
++# Begin Source File\r
++\r
+ SOURCE=..\src\parse_value.c\r
+ # End Source File\r
+ # Begin Source File\r
+@@ -362,6 +370,10 @@ SOURCE=..\lib\util\include\pthreadx.h
+ # End Source File\r
+ # Begin Source File\r
+ \r
++SOURCE=..\src\parse_datetime.h\r
++# End Source File\r
++# Begin Source File\r
++\r
+ SOURCE=..\src\parse_value.h\r
+ # End Source File\r
+ # Begin Source File\r
+diff --git a/libs/xmlrpc-c/Windows/xmlrpc.dsw b/libs/xmlrpc-c/Windows/xmlrpc.dsw
+index f7b676e..62a062e 100644
+--- a/libs/xmlrpc-c/Windows/xmlrpc.dsw
++++ b/libs/xmlrpc-c/Windows/xmlrpc.dsw
+@@ -111,6 +111,36 @@ Package=<4>
+ \r
+ ###############################################################################\r
+ \r
++Project: "xmlrpc_misc"=".\xmlrpc_misc.dsp" - Package Owner=<4>\r
++\r
++Package=<5>\r
++{{{\r
++}}}\r
++\r
++Package=<4>\r
++{{{\r
++}}}\r
++\r
++###############################################################################\r
++\r
++Project: "xmlrpcclient"=".\xmlrpcclient.dsp" - Package Owner=<4>\r
++\r
++Package=<5>\r
++{{{\r
++}}}\r
++\r
++Package=<4>\r
++{{{\r
++ Begin Project Dependency\r
++ Project_Dep_Name xmlrpc\r
++ End Project Dependency\r
++ Begin Project Dependency\r
++ Project_Dep_Name xmlrpc_misc\r
++ End Project Dependency\r
++}}}\r
++\r
++###############################################################################\r
++\r
+ Project: "xmlrpccpp"=".\xmlrpccpp.dsp" - Package Owner=<4>\r
+ \r
+ Package=<5>\r
+diff --git a/libs/xmlrpc-c/Windows/xmlrpc_config.h b/libs/xmlrpc-c/Windows/xmlrpc_config.h
+deleted file mode 100644
+index 319dc2a..0000000
+--- a/libs/xmlrpc-c/Windows/xmlrpc_config.h
++++ /dev/null
+@@ -1,158 +0,0 @@
+-/* Win32 version of xmlrpc_config.h.\r
-\r
--SOURCE=..\src\parse_value.h\r
--# End Source File\r
--# Begin Source File\r
+- For other platforms, this is generated automatically, but for Windows,\r
+- someone generates it manually. Nonetheless, we keep it looking as much\r
+- as possible like the automatically generated one to make it easier to\r
+- maintain (e.g. you can compare the two and see why something builds\r
+- differently for Windows than for some other platform).\r
-\r
--SOURCE=..\src\registry.h\r
--# End Source File\r
--# Begin Source File\r
+- The purpose of this file is to define stuff particular to the build\r
+- environment being used to build Xmlrpc-c. Xmlrpc-c source files can\r
+- #include this file and have build-environment-independent source code.\r
-\r
--SOURCE="..\include\xmlrpc-c\server.h"\r
--# End Source File\r
--# Begin Source File\r
+- A major goal of this file is to reduce conditional compilation in\r
+- the other source files as much as possible. Even more, we want to avoid\r
+- having to generate source code particular to a build environment\r
+- except in this file. \r
-\r
--SOURCE=..\lib\abyss\src\server.h\r
--# End Source File\r
--# Begin Source File\r
+- This file is NOT meant to be used by any code outside of the\r
+- Xmlrpc-c source tree. There is a similar file that gets installed\r
+- as <xmlrpc-c/config.h> that performs the same function for Xmlrpc-c\r
+- interface header files that get compiled as part of a user's program.\r
-\r
--SOURCE="..\include\xmlrpc-c\server_abyss.h"\r
--# End Source File\r
--# Begin Source File\r
+- Logical macros are 0 or 1 instead of the more traditional defined and\r
+- undefined. That's so we can distinguish when compiling code between\r
+- "false" and some problem with the code.\r
+-*/\r
-\r
--SOURCE="..\include\xmlrpc-c\server_cgi.h"\r
--# End Source File\r
--# Begin Source File\r
+-#ifndef XMLRPC_CONFIG_H_INCLUDED\r
+-#define XMLRPC_CONFIG_H_INCLUDED\r
-\r
--SOURCE="..\include\xmlrpc-c\server_w32httpsys.h"\r
--# End Source File\r
--# Begin Source File\r
+-/* From xmlrpc_amconfig.h */\r
-\r
--SOURCE="..\include\xmlrpc-c\sleep_int.h"\r
--# End Source File\r
--# Begin Source File\r
+-#define HAVE__STRICMP 1\r
+-/* Name of package */\r
+-#define PACKAGE "xmlrpc-c"\r
+-/*----------------------------------*/\r
-\r
--SOURCE=..\lib\abyss\src\socket.h\r
--# End Source File\r
--# Begin Source File\r
+-#ifndef HAVE_SETGROUPS\r
+-#define HAVE_SETGROUPS 0\r
+-#endif\r
+-#ifndef HAVE_ASPRINTF\r
+-#define HAVE_ASPRINTF 0\r
+-#endif\r
+-#ifndef HAVE_SETENV\r
+-#define HAVE_SETENV 0\r
+-#endif\r
+-#ifndef HAVE_PSELECT\r
+-#define HAVE_PSELECT 0\r
+-#endif\r
+-#ifndef HAVE_WCSNCMP\r
+-#define HAVE_WCSNCMP 1\r
+-#endif\r
+-#ifndef HAVE_GETTIMEOFDAY\r
+-#define HAVE_GETTIMEOFDAY 0\r
+-#endif\r
+-#ifndef HAVE_LOCALTIME_R\r
+-#define HAVE_LOCALTIME_R 0\r
+-#endif\r
+-#ifndef HAVE_GMTIME_R\r
+-#define HAVE_GMTIME_R 0\r
+-#endif\r
+-#ifndef HAVE_STRCASECMP\r
+-#define HAVE_STRCASECMP 0\r
+-#endif\r
+-#ifndef HAVE_STRICMP\r
+-#define HAVE_STRICMP 0\r
+-#endif\r
+-#ifndef HAVE__STRICMP\r
+-#define HAVE__STRICMP 0\r
+-#endif\r
-\r
--SOURCE=..\lib\abyss\src\socket_win.h\r
--# End Source File\r
--# Begin Source File\r
+-#define HAVE_WCHAR_H 1\r
+-#define HAVE_SYS_FILIO_H 0\r
+-#define HAVE_SYS_IOCTL_H 0\r
-\r
--SOURCE=..\lib\util\include\stdargx.h\r
--# End Source File\r
--# Begin Source File\r
+-#define VA_LIST_IS_ARRAY 0\r
-\r
--SOURCE="..\include\xmlrpc-c\string_int.h"\r
--# End Source File\r
--# Begin Source File\r
+-#define HAVE_LIBWWW_SSL 0\r
-\r
--SOURCE=..\src\system_method.h\r
--# End Source File\r
--# Begin Source File\r
+-/* Used to mark an unused function parameter */\r
+-#define ATTR_UNUSED\r
-\r
--SOURCE=..\lib\abyss\src\thread.h\r
--# End Source File\r
--# Begin Source File\r
+-#define DIRECTORY_SEPARATOR "\\"\r
-\r
--SOURCE="..\include\xmlrpc-c\time_int.h"\r
--# End Source File\r
--# Begin Source File\r
+-#define HAVE_UNICODE_WCHAR 1\r
-\r
--SOURCE=..\lib\abyss\src\token.h\r
--# End Source File\r
--# Begin Source File\r
+-/* Xmlrpc-c code uses __inline__ to declare functions that should\r
+- be compiled as inline code. GNU C recognizes the __inline__ keyword.\r
+- Others recognize 'inline' or '__inline' or nothing at all to say\r
+- a function should be inlined.\r
-\r
--SOURCE="..\include\xmlrpc-c\transport.h"\r
--# End Source File\r
--# Begin Source File\r
+- We could make 'configure' simply do a trial compile to figure out\r
+- which one, but for now, this approximation is easier:\r
+-*/\r
+-#if (!defined(__GNUC__))\r
+- #if (!defined(__inline__))\r
+- #if (defined(__sgi) || defined(_AIX) || defined(_MSC_VER))\r
+- #define __inline__ __inline\r
+- #else \r
+- #define __inline__\r
+- #endif\r
+- #endif\r
+-#endif\r
-\r
--SOURCE=..\transport_config.h\r
--# End Source File\r
--# Begin Source File\r
+-/* MSVCRT means we're using the Microsoft Visual C++ runtime library */\r
-\r
--SOURCE="..\include\xmlrpc-c\transport_int.h"\r
--# End Source File\r
--# Begin Source File\r
+-#ifdef _MSC_VER\r
+-/* The compiler is Microsoft Visual C++. */\r
+- #define MSVCRT _MSC_VER\r
+-#else\r
+- #define MSVCRT 0\r
+-#endif\r
-\r
--SOURCE="..\include\xmlrpc-c\util_int.h"\r
--# End Source File\r
--# Begin Source File\r
+-#if MSVCRT\r
+- /* The MSVC runtime library _does_ have a 'struct timeval', but it is\r
+- part of the Winsock interface (along with select(), which is probably\r
+- its intended use), so isn't intended for use for general timekeeping.\r
+- */\r
+- #define HAVE_TIMEVAL 0\r
+- #define HAVE_TIMESPEC 0\r
+-#else\r
+- #define HAVE_TIMEVAL 1\r
+- /* timespec is Posix.1b. If we need to work on a non-Posix.1b non-Windows\r
+- system, we'll have to figure out how to make Configure determine this.\r
+- */\r
+- #define HAVE_TIMESPEC 1\r
+-#endif\r
-\r
--SOURCE=..\xml_rpc_alloc.h\r
--# End Source File\r
--# Begin Source File\r
+-#if MSVCRT\r
+- #define XMLRPC_VSNPRINTF _vsnprintf\r
+-#else\r
+- #define XMLRPC_VSNPRINTF vsnprintf\r
+-#endif\r
-\r
--SOURCE=..\lib\expat\xmlparse\xmlparse.h\r
--# End Source File\r
--# Begin Source File\r
+-#if defined(_MSC_VER) && (_MSC_VER >= 1400)\r
+-/* Starting with MSVC 8, the runtime library defines various POSIX functions\r
+- such as strdup() whose names violate the ISO C standard (the standard\r
+- says the strXXX names are reserved for the standard), but warns you of\r
+- the standards violation. That warning is 4996, along with other warnings\r
+- that tell you you're using a function that Microsoft thinks you\r
+- shouldn't.\r
-\r
--SOURCE="..\include\xmlrpc-c\xmlparser.h"\r
--# End Source File\r
--# Begin Source File\r
+- Well, POSIX is more important than that element of ISO C, so we disable\r
+- that warning.\r
-\r
--SOURCE=..\xmlrpc_config.h\r
--# End Source File\r
--# Begin Source File\r
+- FYI, msvcrt also defines _strdup(), etc, which doesn't violate the\r
+- naming standard. But since other environments don't define _strdup(),\r
+- we can't use it in portable code.\r
+-*/\r
+-#pragma warning(disable:4996)\r
+-#endif\r
-\r
--SOURCE=..\lib\curl_transport\xmlrpc_curl_transport.h\r
--# End Source File\r
--# Begin Source File\r
+-#define snprintf _snprintf\r
+-#define popen _popen\r
+-#define strtoll _strtoui64\r
+-#define strtoull _strtoui64\r
-\r
--SOURCE=..\lib\wininet_transport\xmlrpc_wininet_transport.h\r
--# End Source File\r
--# End Group\r
--# End Target\r
--# End Project\r
-+# Microsoft Developer Studio Project File - Name="xmlrpc" - Package Owner=<4>
-+# Microsoft Developer Studio Generated Build File, Format Version 6.00
-+# ** DO NOT EDIT **
-+
-+# TARGTYPE "Win32 (x86) Static Library" 0x0104
-+
-+CFG=xmlrpc - Win32 Debug
-+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-+!MESSAGE use the Export Makefile command and run
-+!MESSAGE
-+!MESSAGE NMAKE /f "xmlrpc.mak".
-+!MESSAGE
-+!MESSAGE You can specify a configuration when running NMAKE
-+!MESSAGE by defining the macro CFG on the command line. For example:
-+!MESSAGE
-+!MESSAGE NMAKE /f "xmlrpc.mak" CFG="xmlrpc - Win32 Debug"
-+!MESSAGE
-+!MESSAGE Possible choices for configuration are:
-+!MESSAGE
-+!MESSAGE "xmlrpc - Win32 Release" (based on "Win32 (x86) Static Library")
-+!MESSAGE "xmlrpc - Win32 Debug" (based on "Win32 (x86) Static Library")
-+!MESSAGE
+-#endif\r
+diff --git a/libs/xmlrpc-c/Windows/xmlrpc_win32_config.h b/libs/xmlrpc-c/Windows/xmlrpc_win32_config.h
+index e4e34fd..798b5b2 100644
+--- a/libs/xmlrpc-c/Windows/xmlrpc_win32_config.h
++++ b/libs/xmlrpc-c/Windows/xmlrpc_win32_config.h
+@@ -31,6 +31,8 @@
+ /* From xmlrpc_amconfig.h */
+
+ #define HAVE__STRICMP 1
++#define HAVE__STRTOUI64 1
+
-+# Begin Project
-+# PROP AllowPerConfigDependencies 0
-+CPP=cl.exe
-+RSC=rc.exe
+ /* Name of package */
+ #define PACKAGE "xmlrpc-c"
+ /*----------------------------------*/
+@@ -72,6 +74,7 @@
+ #define HAVE_WCHAR_H 1
+ #define HAVE_SYS_FILIO_H 0
+ #define HAVE_SYS_IOCTL_H 0
++#define HAVE_SYS_SELECT_H 0
+
+ #define VA_LIST_IS_ARRAY 0
+
+@@ -127,11 +130,41 @@
+ #endif
+
+ #if MSVCRT
++ #define HAVE_WINDOWS_THREAD 1
++#else
++ #define HAVE_WINDOWS_THREAD 0
++#endif
+
-+!IF "$(CFG)" == "xmlrpc - Win32 Release"
++/* Some people have and use pthreads on Windows. See
++ http://sourceware.org/pthreads-win32 . For that case, we can set
++ HAVE_PTHREAD to 1. The builder prefers to use pthreads if it has
++ a choice.
++*/
++#define HAVE_PTHREAD 0
+
-+# PROP BASE Use_MFC 0
-+# PROP BASE Use_Debug_Libraries 0
-+# PROP BASE Output_Dir "Release"
-+# PROP BASE Intermediate_Dir "Release"
-+# PROP BASE Target_Dir ""
-+# PROP Use_MFC 0
-+# PROP Use_Debug_Libraries 0
-+# PROP Output_Dir "Release\xmlrpc"
-+# PROP Intermediate_Dir "Release\xmlrpc"
-+# PROP Target_Dir ""
-+LINK32=link.exe -lib
-+MTL=midl.exe
-+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
-+# ADD CPP /nologo /MT /W3 /GX /O2 /I "../lib" /I "../lib/util/include" /I "../include" /I ".." /I "../lib/expat/xmlparse" /I "../lib/abyss/src" /I "../lib/wininet_transport" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "ABYSS_WIN32" /D "CURL_STATICLIB" /YX /FD /c
-+# ADD BASE RSC /l 0x409 /d "NDEBUG"
-+# ADD RSC /l 0x409 /d "NDEBUG"
-+BSC32=bscmake.exe
-+# ADD BASE BSC32 /nologo
-+# ADD BSC32 /nologo
-+LIB32=link.exe -lib
-+# ADD BASE LIB32 /nologo
-+# ADD LIB32 /nologo /out:"..\lib\xmlrpc.lib"
-+
-+!ELSEIF "$(CFG)" == "xmlrpc - Win32 Debug"
-+
-+# PROP BASE Use_MFC 0
-+# PROP BASE Use_Debug_Libraries 1
-+# PROP BASE Output_Dir "Debug"
-+# PROP BASE Intermediate_Dir "Debug"
-+# PROP BASE Target_Dir ""
-+# PROP Use_MFC 0
-+# PROP Use_Debug_Libraries 1
-+# PROP Output_Dir "Debug\xmlrpc"
-+# PROP Intermediate_Dir "Debug\xmlrpc"
-+# PROP Target_Dir ""
-+LINK32=link.exe -lib
-+MTL=midl.exe
-+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
-+# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "../lib" /I "../lib/util/include" /I "../include" /I ".." /I "../lib/expat/xmlparse" /I "../lib/abyss/src" /I "../lib/wininet_transport" /D "_DEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "ABYSS_WIN32" /D "CURL_STATICLIB" /YX /FD /GZ /c
-+# ADD BASE RSC /l 0x409 /d "_DEBUG"
-+# ADD RSC /l 0x409 /d "_DEBUG"
-+BSC32=bscmake.exe
-+# ADD BASE BSC32 /nologo
-+# ADD BSC32 /nologo
-+LIB32=link.exe -lib
-+# ADD BASE LIB32 /nologo
-+# ADD LIB32 /nologo /out:"..\lib\xmlrpcD.lib"
-+
-+!ENDIF
-+
-+# Begin Target
-+
-+# Name "xmlrpc - Win32 Release"
-+# Name "xmlrpc - Win32 Debug"
-+# Begin Group "Source Files"
-+
-+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc"
-+# Begin Source File
-+
-+SOURCE=..\lib\libutil\asprintf.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\libutil\base64.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\libutil\error.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\libutil\make_printable.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\libutil\memblock.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\method.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\util\pthreadx_win32.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\parse_datetime.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\parse_value.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\registry.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\resource.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\libutil\select.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\libutil\sleep.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\system_method.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\libutil\time.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\trace.c
-+# End Source File
-+# Begin Source File
++/* Note that the return value of XMLRPC_VSNPRINTF is int on Windows,
++ ssize_t on POSIX.
++*/
++#if MSVCRT
+ #define XMLRPC_VSNPRINTF _vsnprintf
+ #else
+ #define XMLRPC_VSNPRINTF vsnprintf
+ #endif
+
++#if MSVCRT
++ #define HAVE_REGEX 0
++#else
++ #define HAVE_REGEX 1
++#endif
+
-+SOURCE=..\src\version.c
-+# End Source File
-+# Begin Source File
++#if MSVCRT
++ #define XMLRPC_SOCKETPAIR xmlrpc_win32_socketpair
++ #define XMLRPC_CLOSESOCKET closesocket
++#else
++ #define XMLRPC_SOCKETPAIR socketpair
++ #define XMLRPC_CLOSESOCKET close
++#endif
+
-+SOURCE=..\lib\libutil\utf8.c
-+# End Source File
-+# Begin Source File
+ #if defined(_MSC_VER) && (_MSC_VER >= 1400)
+ /* Starting with MSVC 8, the runtime library defines various POSIX functions
+ such as strdup() whose names violate the ISO C standard (the standard
+@@ -149,10 +182,42 @@
+ */
+ #pragma warning(disable:4996)
+ #endif
++/* Warning C4090 is "different 'const' qualifiers".
+
-+SOURCE=..\src\double.c
-+# End Source File
-+# Begin Source File
++ We disable this warning because MSVC erroneously issues it when there is
++ in fact no difference in const qualifiers:
+
-+SOURCE=..\src\xmlrpc_array.c
-+# End Source File
-+# Begin Source File
++ const char ** p;
++ void * q;
++ q = p;
+
-+SOURCE=..\src\xmlrpc_authcookie.c
-+# End Source File
-+# Begin Source File
++ Note that both p and q are pointers to non-const.
+
-+SOURCE=..\src\xmlrpc_base64.c
-+# End Source File
-+# Begin Source File
++ We have seen this in MSVC 7.1, 8, and 9 (but not 6).
++*/
++#pragma warning(disable:4090)
+
-+SOURCE=..\src\xmlrpc_build.c
-+# End Source File
-+# Begin Source File
++#if HAVE_STRTOLL
++ # define XMLRPC_STRTOLL strtoll
++#elif HAVE_STRTOQ
++ # define XMLRPC_STRTOLL strtoq /* Interix */
++#elif HAVE___STRTOLL
++ # define XMLRPC_STRTOLL __strtoll /* HP-UX <= 11.11 */
++#elif HAVE__STRTOUI64
++ #define XMLRPC_STRTOLL _strtoui64 /* Windows MSVC */
++#endif
+
-+SOURCE=..\src\xmlrpc_client.c
-+# End Source File
-+# Begin Source File
++#if HAVE_STRTOULL
++ # define XMLRPC_STRTOULL strtoull
++#elif HAVE_STRTOUQ
++ # define XMLRPC_STRTOULL strtouq /* Interix */
++#elif HAVE___STRTOULL
++ # define XMLRPC_STRTOULL __strtoull /* HP-UX <= 11.11 */
++#elif HAVE__STRTOUI64
++ #define XMLRPC_STRTOULL _strtoui64 /* Windows MSVC */
++#endif
+
+ #define snprintf _snprintf
+ #define popen _popen
+-#define strtoll _strtoui64
+-#define strtoull _strtoui64
+
+ #endif
+diff --git a/libs/xmlrpc-c/Windows/xmlrpcclient.dsp b/libs/xmlrpc-c/Windows/xmlrpcclient.dsp
+new file mode 100644
+index 0000000..97061b0
+--- /dev/null
++++ b/libs/xmlrpc-c/Windows/xmlrpcclient.dsp
+@@ -0,0 +1,106 @@
++# Microsoft Developer Studio Project File - Name="xmlrpcclient" - Package Owner=<4>
++# Microsoft Developer Studio Generated Build File, Format Version 6.00
++# ** DO NOT EDIT **
+
-+SOURCE=..\src\xmlrpc_client_global.c
-+# End Source File
-+# Begin Source File
++# TARGTYPE "Win32 (x86) Console Application" 0x0103
+
-+SOURCE=..\src\xmlrpc_server_info.c
-+# End Source File
-+# Begin Source File
++CFG=xmlrpcclient - Win32 Release
++!MESSAGE This is not a valid makefile. To build this project using NMAKE,
++!MESSAGE use the Export Makefile command and run
++!MESSAGE
++!MESSAGE NMAKE /f "xmlrpcclient.mak".
++!MESSAGE
++!MESSAGE You can specify a configuration when running NMAKE
++!MESSAGE by defining the macro CFG on the command line. For example:
++!MESSAGE
++!MESSAGE NMAKE /f "xmlrpcclient.mak" CFG="xmlrpcclient - Win32 Release"
++!MESSAGE
++!MESSAGE Possible choices for configuration are:
++!MESSAGE
++!MESSAGE "xmlrpcclient - Win32 Release" (based on "Win32 (x86) Console Application")
++!MESSAGE "xmlrpcclient - Win32 Debug" (based on "Win32 (x86) Console Application")
++!MESSAGE
+
-+SOURCE=..\lib\curl_transport\xmlrpc_curl_transport.c
++# Begin Project
++# PROP AllowPerConfigDependencies 0
++CPP=cl.exe
++RSC=rc.exe
+
-+!IF "$(CFG)" == "xmlrpc - Win32 Release"
++!IF "$(CFG)" == "xmlrpcclient - Win32 Release"
+
-+# ADD CPP /I "." /I "..\..\curl\include"
-+# PROP Exclude_From_Build 1
++# PROP BASE Use_MFC 0
++# PROP BASE Use_Debug_Libraries 0
++# PROP BASE Output_Dir ".\Release"
++# PROP BASE Intermediate_Dir ".\Release"
++# PROP BASE Target_Dir "."
++# PROP Use_MFC 0
++# PROP Use_Debug_Libraries 0
++# PROP Output_Dir "Release\xmlrpcclient"
++# PROP Intermediate_Dir "Release\xmlrpcclient"
++# PROP Ignore_Export_Lib 0
++# PROP Target_Dir "."
++# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /YX /c
++# ADD CPP /nologo /MT /W3 /GX /O2 /I ".." /I "..\lib\util\include" /I "..\tools\lib\include" /I "..\include" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /FD /c
++# SUBTRACT CPP /YX
++# ADD BASE RSC /l 0x809 /d "NDEBUG"
++# ADD RSC /l 0x809 /d "NDEBUG"
++BSC32=bscmake.exe
++# ADD BASE BSC32 /nologo
++# ADD BSC32 /nologo
++LINK32=link.exe
++# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
++# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wininet.lib /nologo /subsystem:console /machine:I386 /out:"..\bin\xmlrpcclient.exe"
+
-+!ELSEIF "$(CFG)" == "xmlrpc - Win32 Debug"
++!ELSEIF "$(CFG)" == "xmlrpcclient - Win32 Debug"
+
-+# ADD CPP /I "." /I "..\..\curl\include"
-+# PROP Exclude_From_Build 1
++# PROP BASE Use_MFC 0
++# PROP BASE Use_Debug_Libraries 1
++# PROP BASE Output_Dir ".\Debug"
++# PROP BASE Intermediate_Dir ".\Debug"
++# PROP BASE Target_Dir "."
++# PROP Use_MFC 0
++# PROP Use_Debug_Libraries 1
++# PROP Output_Dir "Debug\xmlrpcclient"
++# PROP Intermediate_Dir "Debug\xmlrpcclient"
++# PROP Ignore_Export_Lib 0
++# PROP Target_Dir "."
++# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /YX /c
++# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I ".." /I "..\lib\util\include" /I "..\tools\lib\include" /I "..\include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /FD /c
++# SUBTRACT CPP /YX
++# ADD BASE RSC /l 0x809 /d "_DEBUG"
++# ADD RSC /l 0x809 /d "_DEBUG"
++BSC32=bscmake.exe
++# ADD BASE BSC32 /nologo
++# ADD BSC32 /nologo
++LINK32=link.exe
++# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386
++# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wininet.lib /nologo /subsystem:console /debug /machine:I386 /out:"..\bin\xmlrpcclientD.exe"
+
+!ENDIF
+
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\xmlrpc_data.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\xmlrpc_datetime.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\xmlrpc_decompose.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\xmlrpc_expat.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\xmlrpc_libxml2.c
-+# PROP Exclude_From_Build 1
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\xmlrpc_parse.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\xmlrpc_serialize.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\xmlrpc_server_abyss.c
-+# End Source File
-+# Begin Source File
++# Begin Target
+
-+SOURCE=..\src\xmlrpc_server_w32httpsys.c
-+# PROP Exclude_From_Build 1
-+# End Source File
-+# Begin Source File
++# Name "xmlrpcclient - Win32 Release"
++# Name "xmlrpcclient - Win32 Debug"
++# Begin Group "Source Files"
+
-+SOURCE=..\src\xmlrpc_string.c
-+# End Source File
++# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;for;f90"
+# Begin Source File
+
-+SOURCE=..\src\xmlrpc_struct.c
++SOURCE=..\tools\xmlrpc\xmlrpc.c
+# End Source File
+# Begin Source File
+
-+SOURCE=..\lib\wininet_transport\xmlrpc_wininet_transport.c
++SOURCE=..\tools\lib\dumpvalue.c
+# End Source File
+# End Group
+# Begin Group "Header Files"
+
-+# PROP Default_Filter "h;hpp;hxx;hm;inl"
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\http.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\abyss.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\abyss_info.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\abyss_winsock.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\base.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\base_int.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\util\include\bool.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\c_util.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\util\include\c_util.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\util\include\casprintf.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\channel.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\chanswitch.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\client.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\client_global.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\client_int.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\config.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\conn.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\date.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\file.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\util\include\girmath.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\handler.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\util\include\inline.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\util\include\linklist.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\util\include\mallocvar.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\double.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\method.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\util\include\pthreadx.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\parse_datetime.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\parse_value.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\registry.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\server.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\server.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\server_abyss.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\server_cgi.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\server_w32httpsys.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\sleep_int.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\socket.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\socket_win.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\util\include\stdargx.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\string_int.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\system_method.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\thread.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\time_int.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\abyss\src\token.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\transport.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\transport_config.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\transport_int.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\util_int.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\xml_rpc_alloc.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\expat\xmlparse\xmlparse.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE="..\include\xmlrpc-c\xmlparser.h"
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\xmlrpc_config.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\curl_transport\xmlrpc_curl_transport.h
-+# End Source File
-+# Begin Source File
++# PROP Default_Filter "h;hpp;hxx;hm;inl;fi;fd"
++# End Group
++# Begin Group "Resource Files"
+
-+SOURCE=..\lib\wininet_transport\xmlrpc_wininet_transport.h
-+# End Source File
++# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"
+# End Group
+# End Target
+# End Project
-diff --git a/libs/xmlrpc-c/Windows/xmlrpc.dsw b/libs/xmlrpc-c/Windows/xmlrpc.dsw
-index f7b676e..db3cb5a 100644
---- a/libs/xmlrpc-c/Windows/xmlrpc.dsw
-+++ b/libs/xmlrpc-c/Windows/xmlrpc.dsw
-@@ -1,242 +1,272 @@
--Microsoft Developer Studio Workspace File, Format Version 6.00\r
--# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!\r
--\r
--###############################################################################\r
--\r
--Project: "abyss"=".\abyss.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Project: "cpptest"=".\cpptest.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
-- Begin Project Dependency\r
-- Project_Dep_Name xmlrpc\r
-- End Project Dependency\r
-- Begin Project Dependency\r
-- Project_Dep_Name xmlrpccpp\r
-- End Project Dependency\r
-- Begin Project Dependency\r
-- Project_Dep_Name abyss\r
-- End Project Dependency\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Project: "gennmtab"=".\gennmtab.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Project: "rpctest"=".\rpctest.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
-- Begin Project Dependency\r
-- Project_Dep_Name xmlrpc\r
-- End Project Dependency\r
-- Begin Project Dependency\r
-- Project_Dep_Name abyss\r
-- End Project Dependency\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Project: "xmlhttpsys"=".\xmlhttpsys.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Project: "xmlparse"=".\xmlparse.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
-- Begin Project Dependency\r
-- Project_Dep_Name xmltok\r
-- End Project Dependency\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Project: "xmlrpc"=".\xmlrpc.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
-- Begin Project Dependency\r
-- Project_Dep_Name xmlparse\r
-- End Project Dependency\r
-- Begin Project Dependency\r
-- Project_Dep_Name abyss\r
-- End Project Dependency\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Project: "xmlrpccpp"=".\xmlrpccpp.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
-- Begin Project Dependency\r
-- Project_Dep_Name xmlparse\r
-- End Project Dependency\r
-- Begin Project Dependency\r
-- Project_Dep_Name abyss\r
-- End Project Dependency\r
-- Begin Project Dependency\r
-- Project_Dep_Name xmlrpc\r
-- End Project Dependency\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Project: "xmlrpc_sample_add_asynch_client"=".\xmlrpc_sample_add_asynch_client.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
-- Begin Project Dependency\r
-- Project_Dep_Name xmlrpc\r
-- End Project Dependency\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Project: "xmlrpc_sample_add_server"=".\xmlrpc_sample_add_server.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
-- Begin Project Dependency\r
-- Project_Dep_Name xmlrpc\r
-- End Project Dependency\r
-- Begin Project Dependency\r
-- Project_Dep_Name abyss\r
-- End Project Dependency\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Project: "xmlrpc_sample_add_server_w32httpsys"=".\xmlrpc_sample_add_server_w32httpsys.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
-- Begin Project Dependency\r
-- Project_Dep_Name xmlhttpsys\r
-- End Project Dependency\r
-- Begin Project Dependency\r
-- Project_Dep_Name xmlrpc\r
-- End Project Dependency\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Project: "xmlrpc_sample_add_sync_client"=".\xmlrpc_sample_add_sync_client.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
-- Begin Project Dependency\r
-- Project_Dep_Name xmlrpc\r
-- End Project Dependency\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Project: "xmlrpc_sample_auth_client"=".\xmlrpc_sample_auth_client.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
-- Begin Project Dependency\r
-- Project_Dep_Name xmlrpc\r
-- End Project Dependency\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Project: "xmltok"=".\xmltok.dsp" - Package Owner=<4>\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<4>\r
--{{{\r
-- Begin Project Dependency\r
-- Project_Dep_Name gennmtab\r
-- End Project Dependency\r
--}}}\r
--\r
--###############################################################################\r
--\r
--Global:\r
--\r
--Package=<5>\r
--{{{\r
--}}}\r
--\r
--Package=<3>\r
--{{{\r
--}}}\r
--\r
--###############################################################################\r
--\r
-+Microsoft Developer Studio Workspace File, Format Version 6.00
-+# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-+
-+###############################################################################
-+
-+Project: "abyss"=".\abyss.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+}}}
-+
-+###############################################################################
-+
-+Project: "cpptest"=".\cpptest.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+ Begin Project Dependency
-+ Project_Dep_Name xmlrpc
-+ End Project Dependency
-+ Begin Project Dependency
-+ Project_Dep_Name xmlrpccpp
-+ End Project Dependency
-+ Begin Project Dependency
-+ Project_Dep_Name abyss
-+ End Project Dependency
-+}}}
-+
-+###############################################################################
-+
-+Project: "gennmtab"=".\gennmtab.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+}}}
-+
-+###############################################################################
-+
-+Project: "rpctest"=".\rpctest.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+ Begin Project Dependency
-+ Project_Dep_Name xmlrpc
-+ End Project Dependency
-+ Begin Project Dependency
-+ Project_Dep_Name abyss
-+ End Project Dependency
-+}}}
-+
-+###############################################################################
-+
-+Project: "xmlhttpsys"=".\xmlhttpsys.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+}}}
-+
-+###############################################################################
-+
-+Project: "xmlparse"=".\xmlparse.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+ Begin Project Dependency
-+ Project_Dep_Name xmltok
-+ End Project Dependency
-+}}}
-+
-+###############################################################################
-+
-+Project: "xmlrpc"=".\xmlrpc.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+ Begin Project Dependency
-+ Project_Dep_Name xmlparse
-+ End Project Dependency
-+ Begin Project Dependency
-+ Project_Dep_Name abyss
-+ End Project Dependency
-+}}}
-+
-+###############################################################################
-+
-+Project: "xmlrpc_misc"=".\xmlrpc_misc.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+}}}
-+
-+###############################################################################
-+
-+Project: "xmlrpcclient"=".\xmlrpcclient.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+ Begin Project Dependency
-+ Project_Dep_Name xmlrpc
-+ End Project Dependency
-+ Begin Project Dependency
-+ Project_Dep_Name xmlrpc_misc
-+ End Project Dependency
-+}}}
-+
-+###############################################################################
-+
-+Project: "xmlrpccpp"=".\xmlrpccpp.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+ Begin Project Dependency
-+ Project_Dep_Name xmlparse
-+ End Project Dependency
-+ Begin Project Dependency
-+ Project_Dep_Name abyss
-+ End Project Dependency
-+ Begin Project Dependency
-+ Project_Dep_Name xmlrpc
-+ End Project Dependency
-+}}}
-+
-+###############################################################################
-+
-+Project: "xmlrpc_sample_add_asynch_client"=".\xmlrpc_sample_add_asynch_client.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+ Begin Project Dependency
-+ Project_Dep_Name xmlrpc
-+ End Project Dependency
-+}}}
-+
-+###############################################################################
-+
-+Project: "xmlrpc_sample_add_server"=".\xmlrpc_sample_add_server.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+ Begin Project Dependency
-+ Project_Dep_Name xmlrpc
-+ End Project Dependency
-+ Begin Project Dependency
-+ Project_Dep_Name abyss
-+ End Project Dependency
-+}}}
-+
-+###############################################################################
-+
-+Project: "xmlrpc_sample_add_server_w32httpsys"=".\xmlrpc_sample_add_server_w32httpsys.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+ Begin Project Dependency
-+ Project_Dep_Name xmlhttpsys
-+ End Project Dependency
-+ Begin Project Dependency
-+ Project_Dep_Name xmlrpc
-+ End Project Dependency
-+}}}
-+
-+###############################################################################
-+
-+Project: "xmlrpc_sample_add_sync_client"=".\xmlrpc_sample_add_sync_client.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+ Begin Project Dependency
-+ Project_Dep_Name xmlrpc
-+ End Project Dependency
-+}}}
-+
-+###############################################################################
-+
-+Project: "xmlrpc_sample_auth_client"=".\xmlrpc_sample_auth_client.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+ Begin Project Dependency
-+ Project_Dep_Name xmlrpc
-+ End Project Dependency
-+}}}
-+
-+###############################################################################
-+
-+Project: "xmltok"=".\xmltok.dsp" - Package Owner=<4>
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<4>
-+{{{
-+ Begin Project Dependency
-+ Project_Dep_Name gennmtab
-+ End Project Dependency
-+}}}
-+
-+###############################################################################
-+
-+Global:
-+
-+Package=<5>
-+{{{
-+}}}
-+
-+Package=<3>
-+{{{
-+}}}
-+
-+###############################################################################
-+
-diff --git a/libs/xmlrpc-c/Windows/xmlrpc_config.h b/libs/xmlrpc-c/Windows/xmlrpc_config.h
-deleted file mode 100644
-index 319dc2a..0000000
---- a/libs/xmlrpc-c/Windows/xmlrpc_config.h
-+++ /dev/null
-@@ -1,158 +0,0 @@
--/* Win32 version of xmlrpc_config.h.\r
--\r
-- For other platforms, this is generated automatically, but for Windows,\r
-- someone generates it manually. Nonetheless, we keep it looking as much\r
-- as possible like the automatically generated one to make it easier to\r
-- maintain (e.g. you can compare the two and see why something builds\r
-- differently for Windows than for some other platform).\r
--\r
-- The purpose of this file is to define stuff particular to the build\r
-- environment being used to build Xmlrpc-c. Xmlrpc-c source files can\r
-- #include this file and have build-environment-independent source code.\r
--\r
-- A major goal of this file is to reduce conditional compilation in\r
-- the other source files as much as possible. Even more, we want to avoid\r
-- having to generate source code particular to a build environment\r
-- except in this file. \r
--\r
-- This file is NOT meant to be used by any code outside of the\r
-- Xmlrpc-c source tree. There is a similar file that gets installed\r
-- as <xmlrpc-c/config.h> that performs the same function for Xmlrpc-c\r
-- interface header files that get compiled as part of a user's program.\r
--\r
-- Logical macros are 0 or 1 instead of the more traditional defined and\r
-- undefined. That's so we can distinguish when compiling code between\r
-- "false" and some problem with the code.\r
--*/\r
--\r
--#ifndef XMLRPC_CONFIG_H_INCLUDED\r
--#define XMLRPC_CONFIG_H_INCLUDED\r
--\r
--/* From xmlrpc_amconfig.h */\r
--\r
--#define HAVE__STRICMP 1\r
--/* Name of package */\r
--#define PACKAGE "xmlrpc-c"\r
--/*----------------------------------*/\r
--\r
--#ifndef HAVE_SETGROUPS\r
--#define HAVE_SETGROUPS 0\r
--#endif\r
--#ifndef HAVE_ASPRINTF\r
--#define HAVE_ASPRINTF 0\r
--#endif\r
--#ifndef HAVE_SETENV\r
--#define HAVE_SETENV 0\r
--#endif\r
--#ifndef HAVE_PSELECT\r
--#define HAVE_PSELECT 0\r
--#endif\r
--#ifndef HAVE_WCSNCMP\r
--#define HAVE_WCSNCMP 1\r
--#endif\r
--#ifndef HAVE_GETTIMEOFDAY\r
--#define HAVE_GETTIMEOFDAY 0\r
--#endif\r
--#ifndef HAVE_LOCALTIME_R\r
--#define HAVE_LOCALTIME_R 0\r
--#endif\r
--#ifndef HAVE_GMTIME_R\r
--#define HAVE_GMTIME_R 0\r
--#endif\r
--#ifndef HAVE_STRCASECMP\r
--#define HAVE_STRCASECMP 0\r
--#endif\r
--#ifndef HAVE_STRICMP\r
--#define HAVE_STRICMP 0\r
--#endif\r
--#ifndef HAVE__STRICMP\r
--#define HAVE__STRICMP 0\r
--#endif\r
--\r
--#define HAVE_WCHAR_H 1\r
--#define HAVE_SYS_FILIO_H 0\r
--#define HAVE_SYS_IOCTL_H 0\r
--\r
--#define VA_LIST_IS_ARRAY 0\r
--\r
--#define HAVE_LIBWWW_SSL 0\r
--\r
--/* Used to mark an unused function parameter */\r
--#define ATTR_UNUSED\r
--\r
--#define DIRECTORY_SEPARATOR "\\"\r
--\r
--#define HAVE_UNICODE_WCHAR 1\r
--\r
--/* Xmlrpc-c code uses __inline__ to declare functions that should\r
-- be compiled as inline code. GNU C recognizes the __inline__ keyword.\r
-- Others recognize 'inline' or '__inline' or nothing at all to say\r
-- a function should be inlined.\r
--\r
-- We could make 'configure' simply do a trial compile to figure out\r
-- which one, but for now, this approximation is easier:\r
--*/\r
--#if (!defined(__GNUC__))\r
-- #if (!defined(__inline__))\r
-- #if (defined(__sgi) || defined(_AIX) || defined(_MSC_VER))\r
-- #define __inline__ __inline\r
-- #else \r
-- #define __inline__\r
-- #endif\r
-- #endif\r
--#endif\r
--\r
--/* MSVCRT means we're using the Microsoft Visual C++ runtime library */\r
--\r
--#ifdef _MSC_VER\r
--/* The compiler is Microsoft Visual C++. */\r
-- #define MSVCRT _MSC_VER\r
--#else\r
-- #define MSVCRT 0\r
--#endif\r
--\r
--#if MSVCRT\r
-- /* The MSVC runtime library _does_ have a 'struct timeval', but it is\r
-- part of the Winsock interface (along with select(), which is probably\r
-- its intended use), so isn't intended for use for general timekeeping.\r
-- */\r
-- #define HAVE_TIMEVAL 0\r
-- #define HAVE_TIMESPEC 0\r
--#else\r
-- #define HAVE_TIMEVAL 1\r
-- /* timespec is Posix.1b. If we need to work on a non-Posix.1b non-Windows\r
-- system, we'll have to figure out how to make Configure determine this.\r
-- */\r
-- #define HAVE_TIMESPEC 1\r
--#endif\r
--\r
--#if MSVCRT\r
-- #define XMLRPC_VSNPRINTF _vsnprintf\r
--#else\r
-- #define XMLRPC_VSNPRINTF vsnprintf\r
--#endif\r
--\r
--#if defined(_MSC_VER) && (_MSC_VER >= 1400)\r
--/* Starting with MSVC 8, the runtime library defines various POSIX functions\r
-- such as strdup() whose names violate the ISO C standard (the standard\r
-- says the strXXX names are reserved for the standard), but warns you of\r
-- the standards violation. That warning is 4996, along with other warnings\r
-- that tell you you're using a function that Microsoft thinks you\r
-- shouldn't.\r
--\r
-- Well, POSIX is more important than that element of ISO C, so we disable\r
-- that warning.\r
--\r
-- FYI, msvcrt also defines _strdup(), etc, which doesn't violate the\r
-- naming standard. But since other environments don't define _strdup(),\r
-- we can't use it in portable code.\r
--*/\r
--#pragma warning(disable:4996)\r
--#endif\r
--\r
--#define snprintf _snprintf\r
--#define popen _popen\r
--#define strtoll _strtoui64\r
--#define strtoull _strtoui64\r
--\r
--#endif\r
-diff --git a/libs/xmlrpc-c/Windows/xmlrpc_win32_config.h b/libs/xmlrpc-c/Windows/xmlrpc_win32_config.h
-index e4e34fd..798b5b2 100644
---- a/libs/xmlrpc-c/Windows/xmlrpc_win32_config.h
-+++ b/libs/xmlrpc-c/Windows/xmlrpc_win32_config.h
-@@ -31,6 +31,8 @@
- /* From xmlrpc_amconfig.h */
-
- #define HAVE__STRICMP 1
-+#define HAVE__STRTOUI64 1
-+
- /* Name of package */
- #define PACKAGE "xmlrpc-c"
- /*----------------------------------*/
-@@ -72,6 +74,7 @@
- #define HAVE_WCHAR_H 1
- #define HAVE_SYS_FILIO_H 0
- #define HAVE_SYS_IOCTL_H 0
-+#define HAVE_SYS_SELECT_H 0
-
- #define VA_LIST_IS_ARRAY 0
-
-@@ -127,11 +130,41 @@
- #endif
-
- #if MSVCRT
-+ #define HAVE_WINDOWS_THREAD 1
-+#else
-+ #define HAVE_WINDOWS_THREAD 0
-+#endif
-+
-+/* Some people have and use pthreads on Windows. See
-+ http://sourceware.org/pthreads-win32 . For that case, we can set
-+ HAVE_PTHREAD to 1. The builder prefers to use pthreads if it has
-+ a choice.
-+*/
-+#define HAVE_PTHREAD 0
-+
-+/* Note that the return value of XMLRPC_VSNPRINTF is int on Windows,
-+ ssize_t on POSIX.
-+*/
-+#if MSVCRT
- #define XMLRPC_VSNPRINTF _vsnprintf
- #else
- #define XMLRPC_VSNPRINTF vsnprintf
- #endif
-
-+#if MSVCRT
-+ #define HAVE_REGEX 0
-+#else
-+ #define HAVE_REGEX 1
-+#endif
-+
-+#if MSVCRT
-+ #define XMLRPC_SOCKETPAIR xmlrpc_win32_socketpair
-+ #define XMLRPC_CLOSESOCKET closesocket
-+#else
-+ #define XMLRPC_SOCKETPAIR socketpair
-+ #define XMLRPC_CLOSESOCKET close
-+#endif
-+
- #if defined(_MSC_VER) && (_MSC_VER >= 1400)
- /* Starting with MSVC 8, the runtime library defines various POSIX functions
- such as strdup() whose names violate the ISO C standard (the standard
-@@ -149,10 +182,42 @@
- */
- #pragma warning(disable:4996)
- #endif
-+/* Warning C4090 is "different 'const' qualifiers".
-+
-+ We disable this warning because MSVC erroneously issues it when there is
-+ in fact no difference in const qualifiers:
-+
-+ const char ** p;
-+ void * q;
-+ q = p;
-+
-+ Note that both p and q are pointers to non-const.
-+
-+ We have seen this in MSVC 7.1, 8, and 9 (but not 6).
-+*/
-+#pragma warning(disable:4090)
-+
-+#if HAVE_STRTOLL
-+ # define XMLRPC_STRTOLL strtoll
-+#elif HAVE_STRTOQ
-+ # define XMLRPC_STRTOLL strtoq /* Interix */
-+#elif HAVE___STRTOLL
-+ # define XMLRPC_STRTOLL __strtoll /* HP-UX <= 11.11 */
-+#elif HAVE__STRTOUI64
-+ #define XMLRPC_STRTOLL _strtoui64 /* Windows MSVC */
-+#endif
-+
-+#if HAVE_STRTOULL
-+ # define XMLRPC_STRTOULL strtoull
-+#elif HAVE_STRTOUQ
-+ # define XMLRPC_STRTOULL strtouq /* Interix */
-+#elif HAVE___STRTOULL
-+ # define XMLRPC_STRTOULL __strtoull /* HP-UX <= 11.11 */
-+#elif HAVE__STRTOUI64
-+ #define XMLRPC_STRTOULL _strtoui64 /* Windows MSVC */
-+#endif
-
- #define snprintf _snprintf
- #define popen _popen
--#define strtoll _strtoui64
--#define strtoull _strtoui64
-
- #endif
diff --git a/libs/xmlrpc-c/Windows/xmlrpccpp.dsp b/libs/xmlrpc-c/Windows/xmlrpccpp.dsp
-index fedf4e2..0ee50de 100644
+index fedf4e2..34a4728 100644
--- a/libs/xmlrpc-c/Windows/xmlrpccpp.dsp
+++ b/libs/xmlrpc-c/Windows/xmlrpccpp.dsp
-@@ -1,179 +1,182 @@
--# Microsoft Developer Studio Project File - Name="xmlrpccpp" - Package Owner=<4>\r
--# Microsoft Developer Studio Generated Build File, Format Version 6.00\r
--# ** DO NOT EDIT **\r
--\r
--# TARGTYPE "Win32 (x86) Static Library" 0x0104\r
--\r
--CFG=xmlrpccpp - Win32 Debug\r
--!MESSAGE This is not a valid makefile. To build this project using NMAKE,\r
--!MESSAGE use the Export Makefile command and run\r
--!MESSAGE \r
--!MESSAGE NMAKE /f "xmlrpccpp.mak".\r
--!MESSAGE \r
--!MESSAGE You can specify a configuration when running NMAKE\r
--!MESSAGE by defining the macro CFG on the command line. For example:\r
--!MESSAGE \r
--!MESSAGE NMAKE /f "xmlrpccpp.mak" CFG="xmlrpccpp - Win32 Debug"\r
--!MESSAGE \r
--!MESSAGE Possible choices for configuration are:\r
--!MESSAGE \r
--!MESSAGE "xmlrpccpp - Win32 Release" (based on "Win32 (x86) Static Library")\r
--!MESSAGE "xmlrpccpp - Win32 Debug" (based on "Win32 (x86) Static Library")\r
--!MESSAGE \r
--\r
--# Begin Project\r
--# PROP AllowPerConfigDependencies 0\r
--CPP=cl.exe\r
--RSC=rc.exe\r
--\r
--!IF "$(CFG)" == "xmlrpccpp - Win32 Release"\r
--\r
--# PROP BASE Use_MFC 0\r
--# PROP BASE Use_Debug_Libraries 0\r
--# PROP BASE Output_Dir "Release"\r
--# PROP BASE Intermediate_Dir "Release"\r
--# PROP BASE Target_Dir ""\r
--# PROP Use_MFC 0\r
--# PROP Use_Debug_Libraries 0\r
--# PROP Output_Dir "Release\xmlrpccpp"\r
--# PROP Intermediate_Dir "Release\xmlrpccpp"\r
--# PROP Target_Dir ""\r
--LINK32=link.exe -lib\r
--MTL=midl.exe\r
--# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c\r
--# ADD CPP /nologo /MT /W3 /GR /GX /O2 /I "../lib" /I "../lib/curl_transport" /I "../lib/util/include" /I "../include" /I ".." /I "../lib/expat/xmlparse" /I "../lib/abyss/src" /I "../lib/wininet_transport" /I "../.." /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "ABYSS_WIN32" /D "CURL_STATICLIB" /YX /FD /c\r
--# ADD BASE RSC /l 0x409 /d "NDEBUG"\r
--# ADD RSC /l 0x409 /d "NDEBUG"\r
--BSC32=bscmake.exe\r
--# ADD BASE BSC32 /nologo\r
--# ADD BSC32 /nologo\r
--LIB32=link.exe -lib\r
--# ADD BASE LIB32 /nologo\r
--# ADD LIB32 /nologo /out:"..\lib\xmlrpccpp.lib"\r
--\r
--!ELSEIF "$(CFG)" == "xmlrpccpp - Win32 Debug"\r
--\r
--# PROP BASE Use_MFC 0\r
--# PROP BASE Use_Debug_Libraries 1\r
--# PROP BASE Output_Dir "Debug"\r
--# PROP BASE Intermediate_Dir "Debug"\r
--# PROP BASE Target_Dir ""\r
--# PROP Use_MFC 0\r
--# PROP Use_Debug_Libraries 1\r
--# PROP Output_Dir "Debug\xmlrpccpp"\r
--# PROP Intermediate_Dir "Debug\xmlrpccpp"\r
--# PROP Target_Dir ""\r
--LINK32=link.exe -lib\r
--MTL=midl.exe\r
--# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c\r
--# ADD CPP /nologo /MTd /W3 /GR /Gm /GX /ZI /Od /I "../lib" /I "../lib/curl_transport" /I "../lib/util/include" /I "../include" /I ".." /I "../lib/expat/xmlparse" /I "../lib/abyss/src" /I "../lib/wininet_transport" /I "../.." /D "_DEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "ABYSS_WIN32" /D "CURL_STATICLIB" /YX /FD /GZ /c\r
--# ADD BASE RSC /l 0x409 /d "_DEBUG"\r
--# ADD RSC /l 0x409 /d "_DEBUG"\r
--BSC32=bscmake.exe\r
--# ADD BASE BSC32 /nologo\r
--# ADD BSC32 /nologo\r
--LIB32=link.exe -lib\r
--# ADD BASE LIB32 /nologo\r
--# ADD LIB32 /nologo /out:"..\lib\xmlrpccppD.lib"\r
--\r
--!ENDIF \r
--\r
--# Begin Target\r
--\r
--# Name "xmlrpccpp - Win32 Release"\r
--# Name "xmlrpccpp - Win32 Debug"\r
--# Begin Group "Source Files"\r
--\r
--# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc"\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\base64.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\client.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\client_simple.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\curl.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\env_wrap.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\fault.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\girerr.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\girmem.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\libwww.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\outcome.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\packetsocket.cpp\r
+@@ -128,7 +128,6 @@ SOURCE=..\src\cpp\outcome.cpp
+ # Begin Source File\r
+ \r
+ SOURCE=..\src\cpp\packetsocket.cpp\r
-# PROP Exclude_From_Build 1\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\param_list.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\pstream.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\registry.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\server_abyss.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\server_pstream.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\value.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\wininet.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\xml.cpp\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\XmlRpcCpp.cpp\r
--# End Source File\r
--# End Group\r
--# Begin Group "Header Files"\r
--\r
--# PROP Default_Filter "h;hpp;hxx;hm;inl"\r
--# Begin Source File\r
--\r
--SOURCE=..\src\cpp\env_wrap.hpp\r
--# End Source File\r
--# End Group\r
--# End Target\r
--# End Project\r
-+# Microsoft Developer Studio Project File - Name="xmlrpccpp" - Package Owner=<4>
-+# Microsoft Developer Studio Generated Build File, Format Version 6.00
-+# ** DO NOT EDIT **
-+
-+# TARGTYPE "Win32 (x86) Static Library" 0x0104
-+
-+CFG=xmlrpccpp - Win32 Debug
-+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-+!MESSAGE use the Export Makefile command and run
-+!MESSAGE
-+!MESSAGE NMAKE /f "xmlrpccpp.mak".
-+!MESSAGE
-+!MESSAGE You can specify a configuration when running NMAKE
-+!MESSAGE by defining the macro CFG on the command line. For example:
-+!MESSAGE
-+!MESSAGE NMAKE /f "xmlrpccpp.mak" CFG="xmlrpccpp - Win32 Debug"
-+!MESSAGE
-+!MESSAGE Possible choices for configuration are:
-+!MESSAGE
-+!MESSAGE "xmlrpccpp - Win32 Release" (based on "Win32 (x86) Static Library")
-+!MESSAGE "xmlrpccpp - Win32 Debug" (based on "Win32 (x86) Static Library")
-+!MESSAGE
-+
-+# Begin Project
-+# PROP AllowPerConfigDependencies 0
-+CPP=cl.exe
-+RSC=rc.exe
-+
-+!IF "$(CFG)" == "xmlrpccpp - Win32 Release"
-+
-+# PROP BASE Use_MFC 0
-+# PROP BASE Use_Debug_Libraries 0
-+# PROP BASE Output_Dir "Release"
-+# PROP BASE Intermediate_Dir "Release"
-+# PROP BASE Target_Dir ""
-+# PROP Use_MFC 0
-+# PROP Use_Debug_Libraries 0
-+# PROP Output_Dir "Release\xmlrpccpp"
-+# PROP Intermediate_Dir "Release\xmlrpccpp"
-+# PROP Target_Dir ""
-+LINK32=link.exe -lib
-+MTL=midl.exe
-+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
-+# ADD CPP /nologo /MT /W3 /GR /GX /O2 /I "../lib" /I "../lib/curl_transport" /I "../lib/util/include" /I "../include" /I ".." /I "../lib/expat/xmlparse" /I "../lib/abyss/src" /I "../lib/wininet_transport" /I "../.." /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "ABYSS_WIN32" /D "CURL_STATICLIB" /YX /FD /c
-+# ADD BASE RSC /l 0x409 /d "NDEBUG"
-+# ADD RSC /l 0x409 /d "NDEBUG"
-+BSC32=bscmake.exe
-+# ADD BASE BSC32 /nologo
-+# ADD BSC32 /nologo
-+LIB32=link.exe -lib
-+# ADD BASE LIB32 /nologo
-+# ADD LIB32 /nologo /out:"..\lib\xmlrpccpp.lib"
-+
-+!ELSEIF "$(CFG)" == "xmlrpccpp - Win32 Debug"
-+
-+# PROP BASE Use_MFC 0
-+# PROP BASE Use_Debug_Libraries 1
-+# PROP BASE Output_Dir "Debug"
-+# PROP BASE Intermediate_Dir "Debug"
-+# PROP BASE Target_Dir ""
-+# PROP Use_MFC 0
-+# PROP Use_Debug_Libraries 1
-+# PROP Output_Dir "Debug\xmlrpccpp"
-+# PROP Intermediate_Dir "Debug\xmlrpccpp"
-+# PROP Target_Dir ""
-+LINK32=link.exe -lib
-+MTL=midl.exe
-+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
-+# ADD CPP /nologo /MTd /W3 /GR /Gm /GX /ZI /Od /I "../lib" /I "../lib/curl_transport" /I "../lib/util/include" /I "../include" /I ".." /I "../lib/expat/xmlparse" /I "../lib/abyss/src" /I "../lib/wininet_transport" /I "../.." /D "_DEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "ABYSS_WIN32" /D "CURL_STATICLIB" /YX /FD /GZ /c
-+# ADD BASE RSC /l 0x409 /d "_DEBUG"
-+# ADD RSC /l 0x409 /d "_DEBUG"
-+BSC32=bscmake.exe
-+# ADD BASE BSC32 /nologo
-+# ADD BSC32 /nologo
-+LIB32=link.exe -lib
-+# ADD BASE LIB32 /nologo
-+# ADD LIB32 /nologo /out:"..\lib\xmlrpccppD.lib"
-+
-+!ENDIF
-+
-+# Begin Target
-+
-+# Name "xmlrpccpp - Win32 Release"
-+# Name "xmlrpccpp - Win32 Debug"
-+# Begin Group "Source Files"
-+
-+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;cc"
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\base64.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\client.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\client_simple.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\curl.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\env_wrap.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\fault.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\girerr.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\girmem.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\libwww.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\outcome.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\packetsocket.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\param_list.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\pstream.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\registry.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\server_abyss.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\server_pstream.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\server_pstream_conn.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\value.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\wininet.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\xml.cpp
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\XmlRpcCpp.cpp
-+# End Source File
-+# End Group
-+# Begin Group "Header Files"
-+
-+# PROP Default_Filter "h;hpp;hxx;hm;inl"
-+# Begin Source File
-+
-+SOURCE=..\src\cpp\env_wrap.hpp
-+# End Source File
-+# End Group
-+# End Target
-+# End Project
+ # End Source File\r
+ # Begin Source File\r
+ \r
+@@ -152,6 +151,10 @@ SOURCE=..\src\cpp\server_pstream.cpp
+ # End Source File\r
+ # Begin Source File\r
+ \r
++SOURCE=..\src\cpp\server_pstream_conn.cpp\r
++# End Source File\r
++# Begin Source File\r
++\r
+ SOURCE=..\src\cpp\value.cpp\r
+ # End Source File\r
+ # Begin Source File\r
diff --git a/libs/xmlrpc-c/Windows/xmltok.2008.vcproj b/libs/xmlrpc-c/Windows/xmltok.2008.vcproj
deleted file mode 100644
index 0935ede..0000000
-</Project>
\ No newline at end of file
diff --git a/libs/xmlrpc-c/Windows/xmltok.dsp b/libs/xmlrpc-c/Windows/xmltok.dsp
-index eaaebde..3c69d64 100644
+index eaaebde..d9f88c8 100644
--- a/libs/xmlrpc-c/Windows/xmltok.dsp
+++ b/libs/xmlrpc-c/Windows/xmltok.dsp
-@@ -1,138 +1,138 @@
--# Microsoft Developer Studio Project File - Name="xmltok" - Package Owner=<4>\r
--# Microsoft Developer Studio Generated Build File, Format Version 6.00\r
--# ** DO NOT EDIT **\r
--\r
--# TARGTYPE "Win32 (x86) Static Library" 0x0104\r
--\r
--CFG=xmltok - Win32 Release\r
--!MESSAGE This is not a valid makefile. To build this project using NMAKE,\r
--!MESSAGE use the Export Makefile command and run\r
--!MESSAGE \r
--!MESSAGE NMAKE /f "xmltok.mak".\r
--!MESSAGE \r
--!MESSAGE You can specify a configuration when running NMAKE\r
--!MESSAGE by defining the macro CFG on the command line. For example:\r
--!MESSAGE \r
--!MESSAGE NMAKE /f "xmltok.mak" CFG="xmltok - Win32 Release"\r
--!MESSAGE \r
--!MESSAGE Possible choices for configuration are:\r
--!MESSAGE \r
--!MESSAGE "xmltok - Win32 Release" (based on "Win32 (x86) Static Library")\r
--!MESSAGE "xmltok - Win32 Debug" (based on "Win32 (x86) Static Library")\r
--!MESSAGE \r
--\r
--# Begin Project\r
--# PROP AllowPerConfigDependencies 0\r
--CPP=cl.exe\r
--RSC=rc.exe\r
--\r
--!IF "$(CFG)" == "xmltok - Win32 Release"\r
--\r
--# PROP BASE Use_MFC 0\r
--# PROP BASE Use_Debug_Libraries 0\r
--# PROP BASE Output_Dir ".\Release"\r
--# PROP BASE Intermediate_Dir ".\Release"\r
--# PROP BASE Target_Dir "."\r
--# PROP Use_MFC 0\r
--# PROP Use_Debug_Libraries 0\r
--# PROP Output_Dir "Release\xmltok"\r
--# PROP Intermediate_Dir "Release\xmltok"\r
--# PROP Target_Dir "."\r
--MTL=midl.exe\r
--LINK32=link.exe -lib\r
--# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_LIB" /YX /FD /c\r
+@@ -41,7 +41,7 @@ RSC=rc.exe
+ MTL=midl.exe\r
+ LINK32=link.exe -lib\r
+ # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_LIB" /YX /FD /c\r
-# ADD CPP /nologo /MT /W3 /GX /O2 /I ".." /D "NDEBUG" /D "XML_NS" /D "WIN32" /D "_WINDOWS" /D "XML_DTD" /D "_MBCS" /D "_LIB" /YX /FD /c\r
--# ADD BASE RSC /l 0x409 /d "NDEBUG"\r
--# ADD RSC /l 0x409 /d "NDEBUG"\r
--BSC32=bscmake.exe\r
--# ADD BASE BSC32 /nologo\r
--# ADD BSC32 /nologo\r
--LIB32=link.exe -lib\r
--# ADD BASE LIB32 /nologo\r
--# ADD LIB32 /nologo /out:"..\lib\xmltok.lib"\r
--\r
--!ELSEIF "$(CFG)" == "xmltok - Win32 Debug"\r
--\r
--# PROP BASE Use_MFC 0\r
--# PROP BASE Use_Debug_Libraries 1\r
--# PROP BASE Output_Dir ".\Debug"\r
--# PROP BASE Intermediate_Dir ".\Debug"\r
--# PROP BASE Target_Dir "."\r
--# PROP Use_MFC 0\r
--# PROP Use_Debug_Libraries 1\r
--# PROP Output_Dir "Debug\xmltok"\r
--# PROP Intermediate_Dir "Debug\xmltok"\r
--# PROP Target_Dir "."\r
--MTL=midl.exe\r
--LINK32=link.exe -lib\r
--# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c\r
++# ADD CPP /nologo /MT /W3 /GX /O2 /I ".." /I "..\lib\util\include" /D "NDEBUG" /D "XML_NS" /D "WIN32" /D "_WINDOWS" /D "XML_DTD" /D "_MBCS" /D "_LIB" /YX /FD /c\r
+ # ADD BASE RSC /l 0x409 /d "NDEBUG"\r
+ # ADD RSC /l 0x409 /d "NDEBUG"\r
+ BSC32=bscmake.exe\r
+@@ -66,7 +66,7 @@ LIB32=link.exe -lib
+ MTL=midl.exe\r
+ LINK32=link.exe -lib\r
+ # ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c\r
-# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I ".." /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "XML_DTD" /D "XML_NS" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c\r
--# ADD BASE RSC /l 0x409 /d "_DEBUG"\r
--# ADD RSC /l 0x409 /d "_DEBUG"\r
--BSC32=bscmake.exe\r
--# ADD BASE BSC32 /nologo\r
--# ADD BSC32 /nologo\r
--LIB32=link.exe -lib\r
--# ADD BASE LIB32 /nologo\r
--# ADD LIB32 /nologo /out:"..\lib\xmltokD.lib"\r
--\r
--!ENDIF \r
--\r
--# Begin Target\r
--\r
--# Name "xmltok - Win32 Release"\r
--# Name "xmltok - Win32 Debug"\r
--# Begin Group "Source Files"\r
--\r
--# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;for;f90"\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\expat\xmltok\xmlrole.c\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\expat\xmltok\xmltok.c\r
--# End Source File\r
--# End Group\r
--# Begin Group "Header Files"\r
--\r
--# PROP Default_Filter "h;hpp;hxx;hm;inl;fi;fd"\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\expat\xmltok\asciitab.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\expat\xmltok\iasciitab.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\expat\xmltok\latin1tab.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\expat\xmltok\nametab.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\expat\xmltok\utf8tab.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\expat\xmltok\xmldef.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\expat\xmltok\xmlrole.h\r
--# End Source File\r
--# Begin Source File\r
--\r
--SOURCE=..\lib\expat\xmltok\xmltok.h\r
--# End Source File\r
--# End Group\r
--# Begin Group "Resource Files"\r
--\r
--# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"\r
--# End Group\r
--# End Target\r
--# End Project\r
-+# Microsoft Developer Studio Project File - Name="xmltok" - Package Owner=<4>
-+# Microsoft Developer Studio Generated Build File, Format Version 6.00
-+# ** DO NOT EDIT **
-+
-+# TARGTYPE "Win32 (x86) Static Library" 0x0104
-+
-+CFG=xmltok - Win32 Release
-+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-+!MESSAGE use the Export Makefile command and run
-+!MESSAGE
-+!MESSAGE NMAKE /f "xmltok.mak".
-+!MESSAGE
-+!MESSAGE You can specify a configuration when running NMAKE
-+!MESSAGE by defining the macro CFG on the command line. For example:
-+!MESSAGE
-+!MESSAGE NMAKE /f "xmltok.mak" CFG="xmltok - Win32 Release"
-+!MESSAGE
-+!MESSAGE Possible choices for configuration are:
-+!MESSAGE
-+!MESSAGE "xmltok - Win32 Release" (based on "Win32 (x86) Static Library")
-+!MESSAGE "xmltok - Win32 Debug" (based on "Win32 (x86) Static Library")
-+!MESSAGE
-+
-+# Begin Project
-+# PROP AllowPerConfigDependencies 0
-+CPP=cl.exe
-+RSC=rc.exe
-+
-+!IF "$(CFG)" == "xmltok - Win32 Release"
-+
-+# PROP BASE Use_MFC 0
-+# PROP BASE Use_Debug_Libraries 0
-+# PROP BASE Output_Dir ".\Release"
-+# PROP BASE Intermediate_Dir ".\Release"
-+# PROP BASE Target_Dir "."
-+# PROP Use_MFC 0
-+# PROP Use_Debug_Libraries 0
-+# PROP Output_Dir "Release\xmltok"
-+# PROP Intermediate_Dir "Release\xmltok"
-+# PROP Target_Dir "."
-+MTL=midl.exe
-+LINK32=link.exe -lib
-+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_LIB" /YX /FD /c
-+# ADD CPP /nologo /MT /W3 /GX /O2 /I ".." /I "..\lib\util\include" /D "NDEBUG" /D "XML_NS" /D "WIN32" /D "_WINDOWS" /D "XML_DTD" /D "_MBCS" /D "_LIB" /YX /FD /c
-+# ADD BASE RSC /l 0x409 /d "NDEBUG"
-+# ADD RSC /l 0x409 /d "NDEBUG"
-+BSC32=bscmake.exe
-+# ADD BASE BSC32 /nologo
-+# ADD BSC32 /nologo
-+LIB32=link.exe -lib
-+# ADD BASE LIB32 /nologo
-+# ADD LIB32 /nologo /out:"..\lib\xmltok.lib"
-+
-+!ELSEIF "$(CFG)" == "xmltok - Win32 Debug"
-+
-+# PROP BASE Use_MFC 0
-+# PROP BASE Use_Debug_Libraries 1
-+# PROP BASE Output_Dir ".\Debug"
-+# PROP BASE Intermediate_Dir ".\Debug"
-+# PROP BASE Target_Dir "."
-+# PROP Use_MFC 0
-+# PROP Use_Debug_Libraries 1
-+# PROP Output_Dir "Debug\xmltok"
-+# PROP Intermediate_Dir "Debug\xmltok"
-+# PROP Target_Dir "."
-+MTL=midl.exe
-+LINK32=link.exe -lib
-+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
-+# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I ".." /I "..\lib\util\include" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "XML_DTD" /D "XML_NS" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
-+# ADD BASE RSC /l 0x409 /d "_DEBUG"
-+# ADD RSC /l 0x409 /d "_DEBUG"
-+BSC32=bscmake.exe
-+# ADD BASE BSC32 /nologo
-+# ADD BSC32 /nologo
-+LIB32=link.exe -lib
-+# ADD BASE LIB32 /nologo
-+# ADD LIB32 /nologo /out:"..\lib\xmltokD.lib"
-+
-+!ENDIF
-+
-+# Begin Target
-+
-+# Name "xmltok - Win32 Release"
-+# Name "xmltok - Win32 Debug"
-+# Begin Group "Source Files"
-+
-+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat;for;f90"
-+# Begin Source File
-+
-+SOURCE=..\lib\expat\xmltok\xmlrole.c
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\expat\xmltok\xmltok.c
-+# End Source File
-+# End Group
-+# Begin Group "Header Files"
-+
-+# PROP Default_Filter "h;hpp;hxx;hm;inl;fi;fd"
-+# Begin Source File
-+
-+SOURCE=..\lib\expat\xmltok\asciitab.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\expat\xmltok\iasciitab.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\expat\xmltok\latin1tab.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\expat\xmltok\nametab.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\expat\xmltok\utf8tab.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\expat\xmltok\xmldef.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\expat\xmltok\xmlrole.h
-+# End Source File
-+# Begin Source File
-+
-+SOURCE=..\lib\expat\xmltok\xmltok.h
-+# End Source File
-+# End Group
-+# Begin Group "Resource Files"
-+
-+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"
-+# End Group
-+# End Target
-+# End Project
++# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I ".." /I "..\lib\util\include" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "XML_DTD" /D "XML_NS" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c\r
+ # ADD BASE RSC /l 0x409 /d "_DEBUG"\r
+ # ADD RSC /l 0x409 /d "_DEBUG"\r
+ BSC32=bscmake.exe\r
diff --git a/libs/xmlrpc-c/common.mk b/libs/xmlrpc-c/common.mk
index 5b89fa1..a20bf42 100644
--- a/libs/xmlrpc-c/common.mk
-$(SHLIB_INSTALL_TARGETS):lib%/install:$(SHLIB_PREFIX)%.$(SHLIB_SUFFIX).$(MAJ).$(MIN)
-# $< is a library file name, e.g. cygfoo.so.3.1 .
- $(INSTALL_SHLIB) $< $(DESTDIR)$(LIBINST_DIR)/$<
+diff --git a/libs/xmlrpc-c/dll-common.mk b/libs/xmlrpc-c/dll-common.mk
+new file mode 100644
+index 0000000..9840709
+--- /dev/null
++++ b/libs/xmlrpc-c/dll-common.mk
+@@ -0,0 +1,22 @@
++# -*-makefile-*- <-- an Emacs control
++
++# See unix-common.mk for an explanation of this file. This file is
++# analogous to unix-common.mk, but is for a Windows system
++
++SONAME = $@
++IMPLIB = $(@:%:%.dll.a)
++
++SHLIB_CMD = $(CCLD) $(LDFLAGS_SHLIB) -o $@ $^ $(LADD)
++
++.PHONY: $(SHLIB_INSTALL_TARGETS)
++.PHONY: install-shared-libraries
++
++SHLIB_INSTALL_TARGETS = $(SHARED_LIBS_TO_INSTALL:%=%/install)
++
++#SHLIB_INSTALL_TARGETS is like "libfoo/install libbar/install"
++
++install-shared-libraries: $(SHLIB_INSTALL_TARGETS)
++
++$(SHLIB_INSTALL_TARGETS):%/install:%.$(SHLIB_SUFFIX)
++# $< is a library file name, e.g. libfoo.dll .
++ $(INSTALL_SHLIB) $< $(DESTDIR)$(LIBINST_DIR)/$<
diff --git a/libs/xmlrpc-c/doc/INSTALL b/libs/xmlrpc-c/doc/INSTALL
index 76881fa..2790010 100644
--- a/libs/xmlrpc-c/doc/INSTALL
- rm -f $(<:%.$(MAJ).$(MIN).$(SHLIB_SUFFIX)=%.$(SHLIB_SUFFIX)); \
- $(LN_S) $(<:%.$(MIN).$(SHLIB_SUFFIX)=%.$(SHLIB_SUFFIX)) \
- $(<:%.$(MAJ).$(MIN).$(SHLIB_SUFFIX)=%.$(SHLIB_SUFFIX))
+diff --git a/libs/xmlrpc-c/dylib-common.mk b/libs/xmlrpc-c/dylib-common.mk
+new file mode 100644
+index 0000000..c9ac6c5
+--- /dev/null
++++ b/libs/xmlrpc-c/dylib-common.mk
+@@ -0,0 +1,37 @@
++# -*-makefile-*- <-- an Emacs control
++
++# See unix-common.mk for an explanation of this file. This file is
++# analogous to unix-common.mk, but is for an Irix system.
++
++SONAME = $(@:%.$(MIN)=%)
++
++SHLIB_CMD = $(CCLD) $(LADD) $(LDFLAGS_SHLIB) -o $@ $^
++
++SHLIBPP_CMD = $(CXXLD) $(LADD) $(LDFLAGS_SHLIB) -o $@ $^
++
++SHLIB_LE_TARGETS = $(call shliblefn, $(SHARED_LIBS_TO_BUILD))
++
++$(SHLIB_LE_TARGETS):%.$(SHLIB_SUFFIX):%.$(MAJ).$(MIN).$(SHLIB_SUFFIX)
++ rm -f $@
++ $(LN_S) $< $@
++
++
++.PHONY: $(SHLIB_INSTALL_TARGETS)
++.PHONY: install-shared-libraries
++
++SHLIB_INSTALL_TARGETS = $(SHARED_LIBS_TO_INSTALL:%=%/install)
++
++#SHLIB_INSTALL_TARGETS is like "libfoo/install libbar/install"
++
++install-shared-libraries: $(SHLIB_INSTALL_TARGETS)
++
++$(SHLIB_INSTALL_TARGETS):%/install:%.$(MAJ).$(MIN).$(SHLIB_SUFFIX)
++# $< is a library file name, e.g. libfoo.so.3.1 .
++ $(INSTALL_SHLIB) $< $(DESTDIR)$(LIBINST_DIR)/$<
++ cd $(DESTDIR)$(LIBINST_DIR); \
++ rm -f $(<:%.$(MIN).$(SHLIB_SUFFIX)=%.$(SHLIB_SUFFIX)); \
++ $(LN_S) $< $(<:%.$(MIN).$(SHLIB_SUFFIX)=%.$(SHLIB_SUFFIX))
++ cd $(DESTDIR)$(LIBINST_DIR); \
++ rm -f $(<:%.$(MAJ).$(MIN).$(SHLIB_SUFFIX)=%.$(SHLIB_SUFFIX)); \
++ $(LN_S) $(<:%.$(MIN).$(SHLIB_SUFFIX)=%.$(SHLIB_SUFFIX)) \
++ $(<:%.$(MAJ).$(MIN).$(SHLIB_SUFFIX)=%.$(SHLIB_SUFFIX))
diff --git a/libs/xmlrpc-c/examples/.cvsignore b/libs/xmlrpc-c/examples/.cvsignore
deleted file mode 100644
index 792265c..0000000
xmlrpc_env env;
xmlrpc_server_info * serverP;
+diff --git a/libs/xmlrpc-c/examples/compound_value_client.c b/libs/xmlrpc-c/examples/compound_value_client.c
+new file mode 100644
+index 0000000..92baad1
+--- /dev/null
++++ b/libs/xmlrpc-c/examples/compound_value_client.c
+@@ -0,0 +1,161 @@
++/* An XML-RPC client program written in C, as an example of using
++ compound XML-RPC values.
++
++ For a simple client program that just deals with integer values,
++ see xmlrpc_sample_add_client.c. This example focuses just on the
++ compound XML-RPC values and not the client functions.
++
++ This client invokes the example.divide XML-RPC method that the example
++ server program compound_value_server.c provides. That method takes a
++ list of pairs of numbers and returns the list of their quotients.
++
++ Compound XML-RPC values are arrays and structures. We call them compound
++ because they are made up of other XML-RPC values (e.g. an array of XML-RPC
++ integers).
++
++ The arguments to the example.divide method are specified as follows:
++
++ There are two arguments:
++
++ Argument 0: Integer. Version number of this argument protocol. Must
++ be 1.
++
++
++ Argument 1: Array. One element for each pair of numbers you want the
++ server to divide. Each element is structure, with these
++ members:
++
++ KEY: "dividend"
++ VALUE: floating point number. The dividend.
++
++ KEY: "divisor"
++ VALUE: floating point number. The divisor.
++
++ The result of the method is an array. It has one member for each pair of
++ numbers in the arguments (So it is the same size as Argument 1). That
++ member is a floating point number. It is the quotient of the numbers
++ in the corresponding element of Argument 1.
++
++ The client sends the RPC to the server running on the local system
++ ("localhost"), HTTP Port 8080.
++*/
++
++#include <stdlib.h>
++#include <stdio.h>
++
++#include <xmlrpc-c/base.h>
++#include <xmlrpc-c/client.h>
++
++#include "config.h" /* information about this build environment */
++
++#define NAME "Xmlrpc-c Test Client"
++#define VERSION "1.0"
++
++static void
++dieIfFaultOccurred (xmlrpc_env * const envP) {
++ if (envP->fault_occurred) {
++ fprintf(stderr, "ERROR: %s (%d)\n",
++ envP->fault_string, envP->fault_code);
++ exit(1);
++ }
++}
++
++
++
++struct ratio {
++ double dividend;
++ double divisor;
++};
++
++
++
++int
++main(int const argc,
++ const char ** const argv) {
++
++ const char * const serverUrl = "http://localhost:8080/RPC2";
++ const char * const methodName = "example.divide";
++ unsigned int const argVersion = 1;
++ struct ratio const data[] = {{1,2},{12,3},{10,3},{89,3000}};
++ xmlrpc_env env;
++ xmlrpc_value * resultP;
++ unsigned int i;
++ xmlrpc_value * ratioArrayP;
++ unsigned int quotientCt;
++
++ if (argc-1 > 0) {
++ fprintf(stderr, "This program has no arguments\n");
++ exit(1);
++ }
++
++ xmlrpc_env_init(&env);
++
++ xmlrpc_client_init2(&env, XMLRPC_CLIENT_NO_FLAGS, NAME, VERSION, NULL, 0);
++ dieIfFaultOccurred(&env);
++
++ /* Build the 2nd method argument: the array of ratios */
++
++ ratioArrayP = xmlrpc_array_new(&env);
++ dieIfFaultOccurred(&env);
++
++ for (i = 0; i < 4; ++i) {
++ xmlrpc_value * dividendP;
++ xmlrpc_value * divisorP;
++ xmlrpc_value * ratioP;
++
++ dividendP = xmlrpc_double_new(&env, data[i].dividend);
++ dieIfFaultOccurred(&env);
++ divisorP = xmlrpc_double_new(&env, data[i].divisor);
++ dieIfFaultOccurred(&env);
++
++ ratioP = xmlrpc_struct_new(&env);
++ dieIfFaultOccurred(&env);
++
++ xmlrpc_struct_set_value(&env, ratioP, "DIVIDEND", dividendP);
++ dieIfFaultOccurred(&env);
++ xmlrpc_struct_set_value(&env, ratioP, "DIVISOR", divisorP);
++ dieIfFaultOccurred(&env);
++
++ xmlrpc_array_append_item(&env, ratioArrayP, ratioP);
++ dieIfFaultOccurred(&env);
++
++ xmlrpc_DECREF(ratioP);
++ xmlrpc_DECREF(divisorP);
++ xmlrpc_DECREF(dividendP);
++ }
++
++ /* Make the call */
++
++ resultP = xmlrpc_client_call(&env, serverUrl, methodName, "(iA)",
++ (xmlrpc_int32) argVersion, ratioArrayP);
++ dieIfFaultOccurred(&env);
++
++ /* Print out the quotients returned */
++
++ quotientCt = xmlrpc_array_size(&env, resultP);
++ dieIfFaultOccurred(&env);
++
++ for (i = 0; i < quotientCt; ++i) {
++ xmlrpc_value * quotientP;
++ xmlrpc_double quotient;
++
++ xmlrpc_array_read_item(&env, resultP, i, "ientP);
++ dieIfFaultOccurred(&env);
++
++ xmlrpc_read_double(&env, quotientP, "ient);
++ dieIfFaultOccurred(&env);
++
++ printf("Server says quotient %u is %f\n", i, quotient);
++
++ xmlrpc_DECREF(quotientP);
++ }
++
++ xmlrpc_DECREF(resultP);
++
++ xmlrpc_env_clean(&env);
++
++ xmlrpc_client_cleanup();
++
++ return 0;
++}
++
+diff --git a/libs/xmlrpc-c/examples/compound_value_server.c b/libs/xmlrpc-c/examples/compound_value_server.c
+new file mode 100644
+index 0000000..99d1127
+--- /dev/null
++++ b/libs/xmlrpc-c/examples/compound_value_server.c
+@@ -0,0 +1,199 @@
++/* An XML-RPC server program written in C, as an example of using
++ compound XML-RPC values.
++
++ For a simple server program that just deals with integer values,
++ see xmlrpc_sample_add_server.c. This example focuses just on the
++ compound XML-RPC values and not the server functions.
++
++ This server provides the example.divide XML-RPC method that the example
++ client program compound_value_client.c invokes. See that program for
++ details on what the method does.
++
++ The program takes one argument: the HTTP port number on which the server
++ is to accept connections, in decimal.
++
++ Example:
++
++ $ ./compound_value_server 8080&
++ $ ./compound_value_client
++*/
++
++#include <stdlib.h>
++#include <stdio.h>
++
++#include <xmlrpc-c/base.h>
++#include <xmlrpc-c/server.h>
++#include <xmlrpc-c/server_abyss.h>
++
++#include "config.h" /* information about this build environment */
++
++
++
++static void
++computeQuotient(xmlrpc_env * const envP,
++ xmlrpc_value * const ratioP,
++ xmlrpc_double * const quotientP) {
++
++ xmlrpc_value * dividendP;
++
++ xmlrpc_struct_find_value(envP, ratioP, "DIVIDEND", ÷ndP);
++
++ if (!envP->fault_occurred) {
++ if (!dividendP)
++ xmlrpc_env_set_fault(
++ envP, 0, "Structure is missing 'DIVIDEND' member");
++ else {
++ xmlrpc_value * divisorP;
++
++ xmlrpc_struct_find_value(envP, ratioP, "DIVISOR", &divisorP);
++
++ if (!envP->fault_occurred) {
++ if (!divisorP)
++ xmlrpc_env_set_fault(
++ envP, 0, "Structure is missing 'DIVISOR' member");
++ else {
++ xmlrpc_double dividend;
++
++ xmlrpc_read_double(envP, dividendP, ÷nd);
++
++ if (!envP->fault_occurred) {
++ xmlrpc_double divisor;
++
++ xmlrpc_read_double(envP, divisorP, &divisor);
++
++ if (!envP->fault_occurred)
++ *quotientP = dividend / divisor;
++ }
++ xmlrpc_DECREF(divisorP);
++ }
++ }
++ xmlrpc_DECREF(dividendP);
++ }
++ }
++}
++
++
++
++static void
++computeQuotients(xmlrpc_env * const envP,
++ xmlrpc_value * const ratioArrayP,
++ xmlrpc_value ** const quotientArrayPP) {
++
++ xmlrpc_value * quotientArrayP;
++
++ quotientArrayP = xmlrpc_array_new(envP);
++ if (!envP->fault_occurred) {
++
++ unsigned int const ratioCt = xmlrpc_array_size(envP, ratioArrayP);
++
++ unsigned int i;
++
++ for (i = 0; i < ratioCt && !envP->fault_occurred; ++i) {
++ xmlrpc_value * ratioP;
++
++ xmlrpc_array_read_item(envP, ratioArrayP, i, &ratioP);
++
++ if (!envP->fault_occurred) {
++ xmlrpc_double quotient;
++
++ computeQuotient(envP, ratioP, "ient);
++
++ if (!envP->fault_occurred) {
++ xmlrpc_value * quotientP;
++
++ quotientP = xmlrpc_double_new(envP, quotient);
++
++ if (!envP->fault_occurred) {
++ xmlrpc_array_append_item(envP, quotientArrayP,
++ quotientP);
++
++ xmlrpc_DECREF(quotientP);
++ }
++ }
++ xmlrpc_DECREF(ratioP);
++ }
++ }
++ if (envP->fault_occurred)
++ xmlrpc_DECREF(quotientArrayP);
++ else
++ *quotientArrayPP = quotientArrayP;
++ }
++}
++
++
++
++static xmlrpc_value *
++example_divide(xmlrpc_env * const envP,
++ xmlrpc_value * const paramArrayP,
++ void * const serverInfo,
++ void * const channelInfo) {
++
++ xmlrpc_value * retvalP;
++ xmlrpc_int32 argVersion;
++ xmlrpc_value * ratioArrayP;
++
++ xmlrpc_decompose_value(envP, paramArrayP, "(iA)",
++ &argVersion, &ratioArrayP);
++ if (envP->fault_occurred)
++ return NULL;
++
++ if (argVersion != 1) {
++ xmlrpc_env_set_fault(envP, 0, "Parameter list version must be 1");
++ return NULL;
++ }
++
++ computeQuotients(envP, ratioArrayP, &retvalP);
++
++ xmlrpc_DECREF(ratioArrayP);
++
++ if (envP->fault_occurred)
++ return NULL;
++
++ return retvalP;
++}
++
++
++
++int
++main(int const argc,
++ const char ** const argv) {
++
++ struct xmlrpc_method_info3 const methodInfo = {
++ /* .methodName = */ "example.divide",
++ /* .methodFunction = */ &example_divide,
++ };
++ xmlrpc_server_abyss_parms serverparm;
++ xmlrpc_registry * registryP;
++ xmlrpc_env env;
++
++ if (argc-1 != 1) {
++ fprintf(stderr, "You must specify 1 argument: The TCP port "
++ "number on which the server will accept connections "
++ "for RPCs (8080 is a common choice). "
++ "You specified %d arguments.\n", argc-1);
++ exit(1);
++ }
++
++ xmlrpc_env_init(&env);
++
++ registryP = xmlrpc_registry_new(&env);
++
++ xmlrpc_registry_add_method3(&env, registryP, &methodInfo);
++
++ /* In the modern form of the Abyss API, we supply parameters in memory
++ like a normal API. We select the modern form by setting
++ config_file_name to NULL:
++ */
++ serverparm.config_file_name = NULL;
++ serverparm.registryP = registryP;
++ serverparm.port_number = atoi(argv[1]);
++ serverparm.log_file_name = "/tmp/xmlrpc_log";
++
++ printf("Running XML-RPC server...\n");
++
++ xmlrpc_server_abyss(&env, &serverparm, XMLRPC_APSIZE(log_file_name));
++
++ /* xmlrpc_server_abyss() never returns */
++
++ return 0;
++}
diff --git a/libs/xmlrpc-c/examples/cpp/.cvsignore b/libs/xmlrpc-c/examples/cpp/.cvsignore
deleted file mode 100644
index fedad6b..0000000
.PHONY: distclean
distclean: clean
+diff --git a/libs/xmlrpc-c/examples/cpp/callinfo_abyss_server.cpp b/libs/xmlrpc-c/examples/cpp/callinfo_abyss_server.cpp
+new file mode 100644
+index 0000000..a297b8e
+--- /dev/null
++++ b/libs/xmlrpc-c/examples/cpp/callinfo_abyss_server.cpp
+@@ -0,0 +1,133 @@
++// A simple standalone XML-RPC server written in C++.
++//
++// This server returns to the caller his IP address and port number,
++// as a demonstration of how to access such information.
++//
++// This works only on Unix (to wit, something that uses Abyss's
++// ChanSwitchUnix channel switch to accept TCP connections from clients).
++//
++// See xmlrpc_sample_add_server.cpp for a more basic example.
++//
++// To run this:
++//
++// $ ./callinfo_abyss_server &
++// $ xmlrpc localhost:8080 getCallInfo
++
++#include <cassert>
++#include <stdexcept>
++#include <iostream>
++#include <unistd.h>
++#include <sys/socket.h>
++#include <netinet/in.h>
++#include <stdio.h>
++
++#include <xmlrpc-c/base.hpp>
++#include <xmlrpc-c/registry.hpp>
++#include <xmlrpc-c/server_abyss.hpp>
++#include <xmlrpc-c/abyss.h>
++
++using namespace std;
++
++
++struct tcpPortAddr {
++ unsigned char ipAddr[4];
++ unsigned short portNumber;
++};
++
++
++static struct tcpPortAddr
++tcpAddrFromSockAddr(struct sockaddr const sockAddr) {
++
++ const struct sockaddr_in * const sockAddrInP(
++ static_cast<struct sockaddr_in *>((void *)&sockAddr));
++
++ const unsigned char * const ipAddr(
++ static_cast<const unsigned char *>(
++ (const void *)&sockAddrInP->sin_addr.s_addr)
++ ); // 4 byte array
++
++ assert(sockAddrInP->sin_family == AF_INET);
++
++ struct tcpPortAddr retval;
++
++ retval.ipAddr[0] = ipAddr[0];
++ retval.ipAddr[1] = ipAddr[1];
++ retval.ipAddr[2] = ipAddr[2];
++ retval.ipAddr[3] = ipAddr[3];
++ retval.portNumber = ntohs(sockAddrInP->sin_port);
++
++ return retval;
++}
++
++
++
++static std::string
++rpcIpAddrMsg(xmlrpc_c::callInfo_serverAbyss const& callInfo) {
++
++ void * chanInfoPtr;
++ SessionGetChannelInfo(callInfo.abyssSessionP, &chanInfoPtr);
++
++ struct abyss_unix_chaninfo * const chanInfoP(
++ static_cast<struct abyss_unix_chaninfo *>(chanInfoPtr));
++
++ struct tcpPortAddr const tcpAddr(tcpAddrFromSockAddr(chanInfoP->peerAddr));
++
++ char msg[128];
++
++ sprintf(msg, "RPC is from IP address %u.%u.%u.%u, Port %hu",
++ tcpAddr.ipAddr[0],
++ tcpAddr.ipAddr[1],
++ tcpAddr.ipAddr[2],
++ tcpAddr.ipAddr[3],
++ tcpAddr.portNumber);
++
++ return std::string(msg);
++}
++
++
++
++class getCallInfoMethod : public xmlrpc_c::method2 {
++public:
++ void
++ execute(xmlrpc_c::paramList const& paramList,
++ const xmlrpc_c::callInfo * const callInfoPtr,
++ xmlrpc_c::value * const retvalP) {
++
++ const xmlrpc_c::callInfo_serverAbyss * const callInfoP(
++ dynamic_cast<const xmlrpc_c::callInfo_serverAbyss *>(callInfoPtr));
++
++ paramList.verifyEnd(0);
++
++ // Because this gets called via a xmlrpc_c::serverAbyss:
++ assert(callInfoP != NULL);
++
++ *retvalP = xmlrpc_c::value_string(rpcIpAddrMsg(*callInfoP));
++ }
++};
++
++
++
++int
++main(int const,
++ const char ** const) {
++
++ try {
++ xmlrpc_c::registry myRegistry;
++
++ xmlrpc_c::methodPtr const getCallInfoMethodP(new getCallInfoMethod);
++
++ myRegistry.addMethod("getCallInfo", getCallInfoMethodP);
++
++ xmlrpc_c::serverAbyss myAbyssServer(xmlrpc_c::serverAbyss::constrOpt()
++ .registryP(&myRegistry)
++ .portNumber(8080)
++ );
++
++ myAbyssServer.run();
++ // xmlrpc_c::serverAbyss.run() never returns
++ assert(false);
++ } catch (exception const& e) {
++ cerr << "Something failed. " << e.what() << endl;
++ }
++ return 0;
++}
diff --git a/libs/xmlrpc-c/examples/cpp/meerkat-app-list.cpp b/libs/xmlrpc-c/examples/cpp/meerkat-app-list.cpp
deleted file mode 100644
index c2bd1e3..0000000
} catch (exception const& e) {
cerr << "Something threw an error: " << e.what() << endl;
+diff --git a/libs/xmlrpc-c/examples/cpp/pstream_serial_server.cpp b/libs/xmlrpc-c/examples/cpp/pstream_serial_server.cpp
+new file mode 100644
+index 0000000..aba2fbe
+--- /dev/null
++++ b/libs/xmlrpc-c/examples/cpp/pstream_serial_server.cpp
+@@ -0,0 +1,84 @@
++/* A simple standalone RPC server based on an Xmlrpc-c packet socket.
++
++ This program expects the invoker to provide a socket in listen mode
++ as Standard Input.
++
++ This is not an XML-RPC server, because it uses a simple packet socket
++ instead of HTTP. See xmlrpc_sample_add_server.cpp for an example of
++ an XML-RPC server.
++
++ The advantage of this example over XML-RPC is that it has a connection
++ concept. The client can be connected indefinitely and the server gets
++ notified when the client terminates, even if it gets aborted by its OS.
++
++ Here's an example of running this:
++
++ $ socketexec -listen -local_port=8080 ./pstream_serial_server
++*/
++
++#ifndef WIN32
++#include <unistd.h>
++#endif
++#include <cassert>
++#include <iostream>
++#include <signal.h>
++
++#include <xmlrpc-c/base.hpp>
++#include <xmlrpc-c/registry.hpp>
++#include <xmlrpc-c/server_pstream.hpp>
++
++using namespace std;
++
++
++class sampleAddMethod : public xmlrpc_c::method {
++public:
++ sampleAddMethod() {
++ // signature and help strings are documentation -- the client
++ // can query this information with a system.methodSignature and
++ // system.methodHelp RPC.
++ this->_signature = "i:ii"; // method's arguments are two integers
++ this->_help = "This method adds two integers together";
++ }
++ void
++ execute(xmlrpc_c::paramList const& paramList,
++ xmlrpc_c::value * const retvalP) {
++
++ int const addend(paramList.getInt(0));
++ int const adder(paramList.getInt(1));
++
++ paramList.verifyEnd(2);
++
++ *retvalP = xmlrpc_c::value_int(addend + adder);
++ }
++};
++
++
++
++int
++main(int const,
++ const char ** const) {
++
++ // It's a good idea to disable SIGPIPE signals; if client closes his end
++ // of the pipe/socket, we'd rather see a failure to send a response than
++ // get killed by the OS.
++ signal(SIGPIPE, SIG_IGN);
++
++ try {
++ xmlrpc_c::registry myRegistry;
++
++ xmlrpc_c::methodPtr const sampleAddMethodP(new sampleAddMethod);
++
++ myRegistry.addMethod("sample.add", sampleAddMethodP);
++
++ xmlrpc_c::serverPstream server(
++ xmlrpc_c::serverPstream::constrOpt()
++ .socketFd(STDIN_FILENO)
++ .registryP(&myRegistry));
++
++ server.runSerial();
++
++ } catch (exception const& e) {
++ cerr << "Something threw an error: " << e.what() << endl;
++ }
++ return 0;
++}
diff --git a/libs/xmlrpc-c/examples/cpp/xmlrpc_inetd_server.cpp b/libs/xmlrpc-c/examples/cpp/xmlrpc_inetd_server.cpp
index 0dd902a..3bfe186 100644
--- a/libs/xmlrpc-c/examples/cpp/xmlrpc_inetd_server.cpp
myAbyssServer.run();
// xmlrpc_c::serverAbyss.run() never returns
+diff --git a/libs/xmlrpc-c/examples/cpp/xmlrpc_sample_add_server_cgi.cpp b/libs/xmlrpc-c/examples/cpp/xmlrpc_sample_add_server_cgi.cpp
+new file mode 100644
+index 0000000..9b80603
+--- /dev/null
++++ b/libs/xmlrpc-c/examples/cpp/xmlrpc_sample_add_server_cgi.cpp
+@@ -0,0 +1,62 @@
++/* A CGI script that effects a simple XML-RPC server, written in C++.
++
++ See the identically named C program source code for hints on running
++ this example.
++
++*/
++
++#include <cassert>
++#include <iostream>
++
++#include <xmlrpc-c/base.hpp>
++#include <xmlrpc-c/registry.hpp>
++#include <xmlrpc-c/server_cgi.hpp>
++
++using namespace std;
++
++class sampleAddMethod : public xmlrpc_c::method {
++public:
++ sampleAddMethod() {
++ // signature and help strings are documentation -- the client
++ // can query this information with a system.methodSignature and
++ // system.methodHelp RPC.
++ this->_signature = "i:ii"; // method's arguments, result are integers
++ this->_help = "This method adds two integers together";
++ }
++ void
++ execute(xmlrpc_c::paramList const& paramList,
++ xmlrpc_c::value * const retvalP) {
++
++ int const addend(paramList.getInt(0));
++ int const adder(paramList.getInt(1));
++
++ paramList.verifyEnd(2);
++
++ *retvalP = xmlrpc_c::value_int(addend + adder);
++ }
++};
++
++
++
++int
++main(int const,
++ const char ** const) {
++
++ try {
++ xmlrpc_c::registry myRegistry;
++
++ xmlrpc_c::methodPtr const sampleAddMethodP(new sampleAddMethod);
++
++ myRegistry.addMethod("sample.add", sampleAddMethodP);
++
++ xmlrpc_c::serverCgi myServer(
++ xmlrpc_c::serverCgi::constrOpt()
++ .registryP(&myRegistry));
++
++ myServer.processCall();
++
++ } catch (exception const& e) {
++ cerr << "Something failed. " << e.what() << endl;
++ }
++ return 0;
++}
diff --git a/libs/xmlrpc-c/examples/gen_sample_add_xml.c b/libs/xmlrpc-c/examples/gen_sample_add_xml.c
index 736d822..dd65699 100644
--- a/libs/xmlrpc-c/examples/gen_sample_add_xml.c
dieIfFailed("xmlrpc_registry_add_method2", env);
serverparm.config_file_name = NULL;
+diff --git a/libs/xmlrpc-c/examples/json.c b/libs/xmlrpc-c/examples/json.c
+new file mode 100644
+index 0000000..89fe82b
+--- /dev/null
++++ b/libs/xmlrpc-c/examples/json.c
+@@ -0,0 +1,115 @@
++/*
++ This example program demonstrates the JSON parsing and generating
++ capabilities of Xmlrpc-c.
++
++ The program reads JSON text from Standard Input and displays its value as
++ XML-RPC XML text. It then re-generates JSON from the intermediate
++ parsed information and displays that.
++*/
++#include <stdlib.h>
++#include <stdio.h>
++
++#include <xmlrpc-c/json.h>
++
++
++
++static void
++dieIfFaultOccurred(xmlrpc_env * const envP) {
++ if (envP->fault_occurred) {
++ fprintf(stderr, "ERROR: %s (%d)\n",
++ envP->fault_string, envP->fault_code);
++ exit(1);
++ }
++}
++
++
++
++void
++printAsXml(xmlrpc_value * const valP) {
++
++ xmlrpc_env env;
++ xmlrpc_mem_block out;
++
++ xmlrpc_env_init(&env);
++
++ XMLRPC_MEMBLOCK_INIT(char, &env, &out, 0);
++
++ dieIfFaultOccurred(&env);
++
++ xmlrpc_serialize_value(&env, &out, valP);
++
++ printf("XML-RPC XML:\n");
++
++ printf("%.*s\n",
++ XMLRPC_MEMBLOCK_SIZE(char, &out),
++ XMLRPC_MEMBLOCK_CONTENTS(char, &out));
++
++ XMLRPC_MEMBLOCK_CLEAN(char, &out);
++ xmlrpc_env_clean(&env);
++}
++
++
++
++void
++printAsJson(xmlrpc_value * const valP) {
++
++ xmlrpc_env env;
++ xmlrpc_mem_block out;
++ xmlrpc_value * val2P;
++
++ xmlrpc_env_init(&env);
++
++ XMLRPC_MEMBLOCK_INIT(char, &env, &out, 0);
++
++ dieIfFaultOccurred(&env);
++
++ xmlrpc_serialize_json(&env, valP, &out);
++
++ dieIfFaultOccurred(&env);
++
++ printf("JSON:\n");
++
++ printf("%.*s\n",
++ XMLRPC_MEMBLOCK_SIZE(char, &out),
++ XMLRPC_MEMBLOCK_CONTENTS(char, &out));
++
++ XMLRPC_MEMBLOCK_CLEAN(char, &out);
++ xmlrpc_env_clean(&env);
++}
++
++
++
++int
++main(int argc, const char *argv[]) {
++
++ xmlrpc_env env;
++ char buf[1024];
++ xmlrpc_value * valP;
++ size_t bytesRead;
++
++ xmlrpc_env_init(&env);
++
++ if (argc-1 > 0) {
++ fprintf(stderr, "This program has no arguments. "
++ "JSON input is from Standard Input\n");
++ exit(1);
++ }
++
++ bytesRead = fread(buf, 1, sizeof(buf), stdin);
++ buf[bytesRead] = '\0';
++
++ valP = xmlrpc_parse_json(&env, buf);
++
++ dieIfFaultOccurred(&env);
++
++ printAsXml(valP);
++
++ printAsJson(valP);
++
++ xmlrpc_DECREF(valP);
++ xmlrpc_env_clean(&env);
++
++ return 0;
++}
++
++
diff --git a/libs/xmlrpc-c/examples/query-meerkat.c b/libs/xmlrpc-c/examples/query-meerkat.c
deleted file mode 100644
index e566654..0000000
std::vector<unsigned char>
bytesFromBase64(std::string const& base64);
+diff --git a/libs/xmlrpc-c/include/xmlrpc-c/base64_int.h b/libs/xmlrpc-c/include/xmlrpc-c/base64_int.h
+new file mode 100644
+index 0000000..1d1414d
+--- /dev/null
++++ b/libs/xmlrpc-c/include/xmlrpc-c/base64_int.h
+@@ -0,0 +1,11 @@
++#ifndef BASE64_INT_H_INCLUDED
++#define BASE64_INT_H_INCLUDED
++
++#include "xmlrpc-c/c_util.h"
++
++XMLRPC_DLLEXPORT
++void
++xmlrpc_base64Encode(const char * const chars,
++ char * const base64);
++
++#endif
diff --git a/libs/xmlrpc-c/include/xmlrpc-c/base_int.h b/libs/xmlrpc-c/include/xmlrpc-c/base_int.h
index be45cfd..cff8773 100644
--- a/libs/xmlrpc-c/include/xmlrpc-c/base_int.h
typedef uint16_t xmlrpc_uint16_t;
typedef uint32_t xmlrpc_uint32_t;
+diff --git a/libs/xmlrpc-c/include/xmlrpc-c/json.h b/libs/xmlrpc-c/include/xmlrpc-c/json.h
+new file mode 100644
+index 0000000..d7b8453
+--- /dev/null
++++ b/libs/xmlrpc-c/include/xmlrpc-c/json.h
+@@ -0,0 +1,39 @@
++#ifndef XMLRPC_JSON_H_INCLUDED
++#define XMLRPC_JSON_H_INCLUDED
++
++#include <xmlrpc-c/base.h>
++
++#ifdef __cplusplus
++extern "C" {
++#endif /* __cplusplus */
++
++/*
++ Parse a given string as JSON and return its value as an XML-RPC value
++ object.
++
++ @param envP xmlrpc environment for error handling
++ @param buf holds a pointer to a ziro terminated string
++ @return the value generated or NULL (check error)
++*/
++xmlrpc_value *
++xmlrpc_parse_json(xmlrpc_env * const envP,
++ const char * const json);
++
++
++/*
++ Serialize an XML-RPC value object into JSON.
++
++ @param envP holds the xmlrpc execution environment
++ @param valP holds the value to serialize
++ @param out holds a mem block containing the result
++*/
++void
++xmlrpc_serialize_json(xmlrpc_env * const envP,
++ xmlrpc_value * const valP,
++ xmlrpc_mem_block * const jsonP);
++
++#ifdef __cplusplus
++}
++#endif /* __cplusplus */
++
++#endif /* XMLRPC_JSON_H_INCLUDED */
diff --git a/libs/xmlrpc-c/include/xmlrpc-c/oldcppwrapper.hpp b/libs/xmlrpc-c/include/xmlrpc-c/oldcppwrapper.hpp
index 78a9c51..858fdd3 100644
--- a/libs/xmlrpc-c/include/xmlrpc-c/oldcppwrapper.hpp
extern void
xmlrpc_cgi_cleanup (void);
+diff --git a/libs/xmlrpc-c/include/xmlrpc-c/server_cgi.hpp b/libs/xmlrpc-c/include/xmlrpc-c/server_cgi.hpp
+new file mode 100644
+index 0000000..a030ee5
+--- /dev/null
++++ b/libs/xmlrpc-c/include/xmlrpc-c/server_cgi.hpp
+@@ -0,0 +1,45 @@
++#ifndef SERVER_CGI_HPP_INCLUDED
++#define SERVER_CGI_HPP_INCLUDED
++
++#include <xmlrpc-c/c_util.h>
++#include <xmlrpc-c/registry.hpp>
++
++namespace xmlrpc_c {
++
++class XMLRPC_DLLEXPORT serverCgi {
++
++public:
++
++ class XMLRPC_DLLEXPORT constrOpt {
++ public:
++ constrOpt();
++
++ constrOpt & registryPtr (xmlrpc_c::registryPtr const& arg);
++ constrOpt & registryP (const xmlrpc_c::registry * const& arg);
++
++ struct value {
++ xmlrpc_c::registryPtr registryPtr;
++ const xmlrpc_c::registry * registryP;
++ } value;
++ struct {
++ bool registryPtr;
++ bool registryP;
++ } present;
++ };
++
++ serverCgi(constrOpt const& opt);
++
++ ~serverCgi();
++
++ void
++ processCall();
++
++private:
++
++ struct serverCgi_impl * implP;
++};
++
++
++} // namespace
++
++#endif
diff --git a/libs/xmlrpc-c/include/xmlrpc-c/server_pstream.hpp b/libs/xmlrpc-c/include/xmlrpc-c/server_pstream.hpp
index b542532..c365f9a 100644
--- a/libs/xmlrpc-c/include/xmlrpc-c/server_pstream.hpp
#ifdef __cplusplus
}
#endif
+diff --git a/libs/xmlrpc-c/include/xmlrpc-c/string_number.h b/libs/xmlrpc-c/include/xmlrpc-c/string_number.h
+new file mode 100644
+index 0000000..570a192
+--- /dev/null
++++ b/libs/xmlrpc-c/include/xmlrpc-c/string_number.h
+@@ -0,0 +1,21 @@
++#ifndef STRING_NUMBER_H_INCLUDED
++#define STRING_NUMBER_H_INCLUDED
++
++#include <xmlrpc-c/config.h>
++#include <xmlrpc-c/util.h>
++
++#ifdef __cplusplus
++extern "C" {
++#endif
++
++XMLRPC_DLLEXPORT
++void
++xmlrpc_parse_int64(xmlrpc_env * const envP,
++ const char * const str,
++ xmlrpc_int64 * const i64P);
++
++#ifdef __cplusplus
++}
++#endif
++
++#endif
diff --git a/libs/xmlrpc-c/include/xmlrpc-c/time_int.h b/libs/xmlrpc-c/include/xmlrpc-c/time_int.h
index 4db4537..705f2c8 100644
--- a/libs/xmlrpc-c/include/xmlrpc-c/time_int.h
- cd $(DESTDIR)$(LIBINST_DIR); \
- rm -f $< $(<:%.$(MAJ)=%); \
- $(LN_S) $< $(<:%.$(MAJ)=%)
+diff --git a/libs/xmlrpc-c/irix-common.mk b/libs/xmlrpc-c/irix-common.mk
+new file mode 100644
+index 0000000..b0c936e
+--- /dev/null
++++ b/libs/xmlrpc-c/irix-common.mk
+@@ -0,0 +1,31 @@
++# -*-makefile-*- <-- an Emacs control
++
++# See unix-common.mk for an explanation of this file. This file is
++# analogous to unix-common.mk, but is for an Irix system.
++
++SONAME = $(@:%.$(MAJ):%)
++
++SHLIB_CMD = $(CCLD) $(LADD) $(LDFLAGS_SHLIB) -o $@ $^
++
++SHLIB_LE_TARGETS = $(call shliblefn, $(SHARED_LIBS_TO_BUILD))
++
++$(SHLIB_LE_TARGETS):%:%.$(MAJ)
++ rm -f $@
++ $(LN_S) $< $@
++
++
++.PHONY: $(SHLIB_INSTALL_TARGETS)
++.PHONY: install-shared-libraries
++
++SHLIB_INSTALL_TARGETS = $(SHARED_LIBS_TO_INSTALL:%=%/install)
++
++#SHLIB_INSTALL_TARGETS is like "libfoo/install libbar/install"
++
++install-shared-libraries: $(SHLIB_INSTALL_TARGETS)
++
++$(SHLIB_INSTALL_TARGETS):%/install:%.$(SHLIB_SUFFIX).$(MAJ)
++# $< is a library file name, e.g. libfoo.so.3.1 .
++ $(INSTALL_SHLIB) $< $(DESTDIR)$(LIBINST_DIR)/$<
++ cd $(DESTDIR)$(LIBINST_DIR); \
++ rm -f $< $(<:%.$(MAJ)=%); \
++ $(LN_S) $< $(<:%.$(MAJ)=%)
+diff --git a/libs/xmlrpc-c/lib/Makefile.depend b/libs/xmlrpc-c/lib/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
+diff --git a/libs/xmlrpc-c/lib/abyss/.cvsignore b/libs/xmlrpc-c/lib/abyss/.cvsignore
+deleted file mode 100644
+index e69de29..0000000
+diff --git a/libs/xmlrpc-c/lib/abyss/Makefile.depend b/libs/xmlrpc-c/lib/abyss/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
diff --git a/libs/xmlrpc-c/lib/abyss/change.log b/libs/xmlrpc-c/lib/abyss/change.log
deleted file mode 100644
index 2d32d1a..0000000
- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+diff --git a/libs/xmlrpc-c/lib/abyss/src/.cvsignore b/libs/xmlrpc-c/lib/abyss/src/.cvsignore
+deleted file mode 100644
+index e69de29..0000000
diff --git a/libs/xmlrpc-c/lib/abyss/src/Abyss.dsp b/libs/xmlrpc-c/lib/abyss/src/Abyss.dsp
deleted file mode 100644
index c989392..0000000
-include Makefile.depend
+include depend.mk
+diff --git a/libs/xmlrpc-c/lib/abyss/src/Makefile.depend b/libs/xmlrpc-c/lib/abyss/src/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
diff --git a/libs/xmlrpc-c/lib/abyss/src/channel.c b/libs/xmlrpc-c/lib/abyss/src/channel.c
index af81c62..5044e23 100644
--- a/libs/xmlrpc-c/lib/abyss/src/channel.c
}
diff --git a/libs/xmlrpc-c/lib/abyss/src/socket_win.c b/libs/xmlrpc-c/lib/abyss/src/socket_win.c
-index d3f683a..187c307 100644
+index d3f683a..a1a07df 100644
--- a/libs/xmlrpc-c/lib/abyss/src/socket_win.c
+++ b/libs/xmlrpc-c/lib/abyss/src/socket_win.c
-@@ -36,192 +36,62 @@ typedef struct tagSOCKERRS {
- char * desc; // description of error
- } SOCKERR;
-
+@@ -1,997 +1,892 @@
+-/*=============================================================================
+- socket_win.c
+-===============================================================================
+- This is the implementation of TChanSwitch and TChannel
+- for a Winsock socket.
+-=============================================================================*/
+-
+-#include <stdlib.h>
+-#include <stdio.h>
+-#include <string.h>
+-#include <assert.h>
+-#include <winsock2.h>
+-
+-#include "xmlrpc_config.h"
+-#include "xmlrpc-c/util_int.h"
+-#include "xmlrpc-c/string_int.h"
+-#include "mallocvar.h"
+-#include "trace.h"
+-#include "chanswitch.h"
+-#include "channel.h"
+-#include "socket.h"
+-#include "xmlrpc-c/abyss.h"
+-
+-#include "socket_win.h"
+-
+-#ifndef socklen_t
+-typedef int socklen_t;
+-#endif
+-
+-/* =============================================================
+- Provided nice error strings, NOT available in system errors.
+- ============================================================= */
+-
+-typedef struct tagSOCKERRS {
+- int err; // WSAGetLastError() value
+- char * desc; // description of error
+-} SOCKERR;
+-
-/* could/should perhaps be by the actual call,
- but for now, just one big list, with some repeats
-*/
-+/* list shamelessly copied from apache apr errorcodes.c - Grmt 2011-06-16 */
-
- SOCKERR sSockErr[] = {
+-
+-SOCKERR sSockErr[] = {
- { WSANOTINITIALISED,
- "WSANOTINITIALISED - "
- "WSAStartup must be called before using this function." },
-
- /* must be last entry */
- { 0, 0 }
-+ WSAEINTR, "Interrupted system call",
-+ WSAEBADF, "Bad file number",
-+ WSAEACCES, "Permission denied",
-+ WSAEFAULT, "Bad address",
-+ WSAEINVAL, "Invalid argument",
-+ WSAEMFILE, "Too many open sockets",
-+ WSAEWOULDBLOCK, "Operation would block",
-+ WSAEINPROGRESS, "Operation now in progress",
-+ WSAEALREADY, "Operation already in progress",
-+ WSAENOTSOCK, "Socket operation on non-socket",
-+ WSAEDESTADDRREQ, "Destination address required",
-+ WSAEMSGSIZE, "Message too long",
-+ WSAEPROTOTYPE, "Protocol wrong type for socket",
-+ WSAENOPROTOOPT, "Bad protocol option",
-+ WSAEPROTONOSUPPORT, "Protocol not supported",
-+ WSAESOCKTNOSUPPORT, "Socket type not supported",
-+ WSAEOPNOTSUPP, "Operation not supported on socket",
-+ WSAEPFNOSUPPORT, "Protocol family not supported",
-+ WSAEAFNOSUPPORT, "Address family not supported",
-+ WSAEADDRINUSE, "Address already in use",
-+ WSAEADDRNOTAVAIL, "Can't assign requested address",
-+ WSAENETDOWN, "Network is down",
-+ WSAENETUNREACH, "Network is unreachable",
-+ WSAENETRESET, "Net connection reset",
-+ WSAECONNABORTED, "Software caused connection abort",
-+ WSAECONNRESET, "Connection reset by peer",
-+ WSAENOBUFS, "No buffer space available",
-+ WSAEISCONN, "Socket is already connected",
-+ WSAENOTCONN, "Socket is not connected",
-+ WSAESHUTDOWN, "Can't send after socket shutdown",
-+ WSAETOOMANYREFS, "Too many references, can't splice",
-+ WSAETIMEDOUT, "Connection timed out",
-+ WSAECONNREFUSED, "Connection refused",
-+ WSAELOOP, "Too many levels of symbolic links",
-+ WSAENAMETOOLONG, "File name too long",
-+ WSAEHOSTDOWN, "Host is down",
-+ WSAEHOSTUNREACH, "No route to host",
-+ WSAENOTEMPTY, "Directory not empty",
-+ WSAEPROCLIM, "Too many processes",
-+ WSAEUSERS, "Too many users",
-+ WSAEDQUOT, "Disc quota exceeded",
-+ WSAESTALE, "Stale NFS file handle",
-+ WSAEREMOTE, "Too many levels of remote in path",
-+ WSASYSNOTREADY, "Network system is unavailable",
-+ WSAVERNOTSUPPORTED, "Winsock version out of range",
-+ WSANOTINITIALISED, "WSAStartup not yet called",
-+ WSAEDISCON, "Graceful shutdown in progress",
-+ WSAHOST_NOT_FOUND, "Host not found",
-+ WSANO_DATA, "No host data of that type was found",
-+ 0, NULL
- };
-
-
+-};
+-
+-
+-
+-static const char *
+-getWSAError(int const wsaErrno) {
+-
+- SOCKERR * pseP;
+-
+- pseP = &sSockErr[0]; // initial value
+-
+- while (pseP->desc) {
+- if (pseP->err == wsaErrno)
+- return pseP->desc;
+-
+- ++pseP;
+- }
-
- static const char *
- getWSAError(int const wsaErrno) {
-
-@@ -236,7 +106,7 @@ getWSAError(int const wsaErrno) {
- ++pseP;
- }
-
- return "(no description available)";
-+ return "No description available";
- }
-
-
-@@ -325,6 +195,8 @@ channelDestroy(TChannel * const channelP) {
- CloseHandle(socketWinP->interruptEvent);
-
- free(socketWinP);
-+ channelP->implP = 0;
-+
- }
-
-
-@@ -335,32 +207,42 @@ static void
- channelWrite(TChannel * const channelP,
- const unsigned char * const buffer,
- uint32_t const len,
+-}
+-
+-
+-
+-struct socketWin {
+-/*----------------------------------------------------------------------------
+- The properties/state of a TSocket unique to a Unix TSocket.
+------------------------------------------------------------------------------*/
+- SOCKET winsock;
+- bool userSuppliedWinsock;
+- /* 'socket' was supplied by the user; it belongs to him */
+- HANDLE interruptEvent;
+-};
+-
+-static
+-bool
+-connected(SOCKET const fd) {
+-/*----------------------------------------------------------------------------
+- Return TRUE iff the socket on file descriptor 'fd' is in the connected
+- state.
+- If 'fd' does not identify a stream socket or we are unable to determine
+- the state of the stream socket, the answer is "false".
+------------------------------------------------------------------------------*/
+- bool connected;
+- struct sockaddr sockaddr;
+- socklen_t nameLen;
+- int rc;
+-
+- nameLen = sizeof(sockaddr);
+-
+- rc = getpeername(fd, &sockaddr, &nameLen);
+-
+- if (rc == 0)
+- connected = TRUE;
+- else
+- connected = FALSE;
+-
+- return connected;
+-}
+-
+-
+-
+-void
+-SocketWinInit(const char ** const errorP) {
+-
+- WORD wVersionRequested;
+- WSADATA wsaData;
+- int err;
+-
+- wVersionRequested = MAKEWORD(1, 0);
+-
+- err = WSAStartup(wVersionRequested, &wsaData);
+-
+- if (err != 0) {
+- int const lastError = WSAGetLastError();
+- xmlrpc_asprintf(errorP, "WSAStartup() faild with error %d (%s)",
+- lastError, getWSAError(lastError));
+- } else
+- *errorP = NULL;
+-}
+-
+-
+-
+-void
+-SocketWinTerm(void) {
+-
+- WSACleanup();
+-}
+-
+-
+-
+-/*=============================================================================
+- TChannel
+-=============================================================================*/
+-
+-static ChannelDestroyImpl channelDestroy;
+-
+-static void
+-channelDestroy(TChannel * const channelP) {
+-
+- struct socketWin * const socketWinP = channelP->implP;
+-
+- if (!socketWinP->userSuppliedWinsock)
+- closesocket(socketWinP->winsock);
+-
+- CloseHandle(socketWinP->interruptEvent);
+-
+- free(socketWinP);
+-}
+-
+-
+-
+-static ChannelWriteImpl channelWrite;
+-
+-static void
+-channelWrite(TChannel * const channelP,
+- const unsigned char * const buffer,
+- uint32_t const len,
- bool * const failedP) {
-+ bool * const failedP) {
-
- struct socketWin * const socketWinP = channelP->implP;
-
- size_t bytesLeft;
- bool error;
+-
+- struct socketWin * const socketWinP = channelP->implP;
+-
+- size_t bytesLeft;
+- bool error;
-
- assert(sizeof(size_t) >= sizeof(len));
-
- error = TRUE;
- else
- bytesLeft -= rc;
-+ int to_count = 0;
-+ int lastError = 0;
-+
-+ for (bytesLeft = len, error = FALSE; bytesLeft > 0 && !error;) {
-+ size_t const maxSend = 4096 * 2; /* with respect to resource allocation this might be a better value than 2^31 */
-+
-+ int rc = send(socketWinP->winsock, buffer + len - bytesLeft, MIN(maxSend, bytesLeft), 0);
-+ if (rc > 0) { /* 0 means connection closed; < 0 means severe error */
-+ to_count = 0;
-+ bytesLeft -= rc;
-+ }
-+ else if (!rc) {
-+ error = TRUE;
-+ fprintf(stderr, "Abyss: send() failed: connection closed");
-+ }
-+ else {
-+ error = TRUE;
-+ lastError = WSAGetLastError();
-+ if (lastError == WSAEWOULDBLOCK || lastError == ERROR_IO_PENDING) {
-+ SleepEx(20, TRUE); /* give socket another chance after xx millisec) */
-+ if (++to_count < 300) {
-+ error = FALSE;
-+ }
-+ // fprintf(stderr, "Abyss: send() failed with errno %d (%s) cnt %d, will retry\n", lastError, getWSAError(lastError), to_count);
-+ }
-+ if (error) fprintf(stderr, "Abyss: send() failed with errno %d (%s)\n", lastError, getWSAError(lastError));
-+ }
- }
+- }
- *failedP = error;
-+
-+ *failedP = error;
- }
-
-
-@@ -375,16 +257,29 @@ channelRead(TChannel * const channelP,
- bool * const failedP) {
-
- struct socketWin * const socketWinP = channelP->implP;
+-}
+-
+-
+-
+-static ChannelReadImpl channelRead;
+-
+-static void
+-channelRead(TChannel * const channelP,
+- unsigned char * const buffer,
+- uint32_t const bufferSize,
+- uint32_t * const bytesReceivedP,
+- bool * const failedP) {
+-
+- struct socketWin * const socketWinP = channelP->implP;
-
- int rc;
- rc = recv(socketWinP->winsock, buffer, bufferSize, 0);
- *failedP = FALSE;
- *bytesReceivedP = rc;
- }
-+ int retries = 300;
-+
-+ for (*failedP = TRUE; *failedP && retries; retries--) {
-+ int rc = recv(socketWinP->winsock, buffer, bufferSize, 0);
-+ int lastError = WSAGetLastError();
-+
-+ if (rc < 0) {
-+ if (lastError == WSAEWOULDBLOCK || lastError == ERROR_IO_PENDING) {
-+ fprintf(stderr, "Abyss: recv() failed with errno %d (%s) cnt %d, will retry\n", lastError, getWSAError(lastError), retries);
-+ SleepEx(30, TRUE); /* give socket another chance after xx millisec)*/
-+ *failedP = FALSE;
-+ } else {
-+ fprintf(stderr, "Abyss: recv() failed with errno %d (%s)\n", lastError, getWSAError(lastError));
-+ break;
-+ }
-+ } else {
-+ *failedP = FALSE;
-+ *bytesReceivedP = rc;
-+
-+ if (ChannelTraceIsActive)
-+ fprintf(stderr, "Abyss channel: read %u bytes: '%.*s'\n", bytesReceivedP, (int)(*bytesReceivedP), buffer);
-+ }
-+ }
- }
-
-
+-}
+-
+-
+-
+-static ChannelWaitImpl channelWait;
+-
+-static void
+-channelWait(TChannel * const channelP,
+- bool const waitForRead,
+- bool const waitForWrite,
+- uint32_t const timems,
+- bool * const readyToReadP,
+- bool * const readyToWriteP,
+- bool * const failedP) {
+-
+- struct socketWin * const socketWinP = channelP->implP;
+-
+- fd_set rfds, wfds;
+- TIMEVAL tv;
+- bool failed, readRdy, writeRdy, timedOut;
+-
+- FD_ZERO(&rfds);
+- FD_ZERO(&wfds);
+-
+- if (waitForRead)
+- FD_SET(socketWinP->winsock, &rfds);
+-
+- if (waitForWrite)
+- FD_SET(socketWinP->winsock, &wfds);
+-
+- tv.tv_sec = timems / 1000;
+- tv.tv_usec = timems % 1000;
+-
+- for (failed = FALSE, readRdy = FALSE, writeRdy = FALSE, timedOut = FALSE;
+- !failed && !readRdy && !writeRdy && !timedOut;
+- ) {
+-
+- int rc;
+-
+- rc = select(socketWinP->winsock + 1, &rfds, &wfds, NULL,
+- (timems == TIME_INFINITE ? NULL : &tv));
+-
+- switch(rc) {
+- case 0:
+- timedOut = TRUE;
+- break;
+- case -1: /* socket error */
+- if (WSAGetLastError() != WSAEINTR)
+- failed = TRUE;
+- break;
+- default:
+- if (FD_ISSET(socketWinP->winsock, &rfds))
+- readRdy = TRUE;
+- if (FD_ISSET(socketWinP->winsock, &wfds))
+- writeRdy = TRUE;
+- }
+- }
+-
+- if (failedP)
+- *failedP = failed;
+- if (readyToReadP)
+- *readyToReadP = readRdy;
+- if (readyToWriteP)
+- *readyToWriteP = writeRdy;
+-}
+-
+-
+-
+-static ChannelInterruptImpl channelInterrupt;
+-
+-static void
+-channelInterrupt(TChannel * const channelP) {
+-/*----------------------------------------------------------------------------
+- Interrupt any waiting that a thread might be doing in channelWait()
+- now or in the future.
+-
+- Actually, this is just a no-op because we don't yet know how to
+- accomplish that. (But we could probably do it the same way
+- chanSwitchInterrupt() works -- no one has needed it enough yet to do that
+- work).
+------------------------------------------------------------------------------*/
+-
+-}
+-
+-
+-
+-void
+-ChannelWinGetPeerName(TChannel * const channelP,
+- struct sockaddr_in * const inAddrP,
+- const char ** const errorP) {
+-
+- struct socketWin * const socketWinP = channelP->implP;
+-
+- socklen_t addrlen;
+- int rc;
+- struct sockaddr sockAddr;
+-
+- addrlen = sizeof(sockAddr);
+-
+- rc = getpeername(socketWinP->winsock, &sockAddr, &addrlen);
+-
+- if (rc != 0) {
+- int const lastError = WSAGetLastError();
+- xmlrpc_asprintf(errorP, "getpeername() failed. WSA error = %d (%s)",
+- lastError, getWSAError(lastError));
+- } else {
+- if (addrlen != sizeof(sockAddr))
+- xmlrpc_asprintf(errorP, "getpeername() returned a socket address "
+- "of the wrong size: %u. Expected %u",
+- addrlen, sizeof(sockAddr));
+- else {
+- if (sockAddr.sa_family != AF_INET)
+- xmlrpc_asprintf(errorP,
+- "Socket does not use the Inet (IP) address "
+- "family. Instead it uses family %d",
+- sockAddr.sa_family);
+- else {
+- *inAddrP = *(struct sockaddr_in *)&sockAddr;
+-
+- *errorP = NULL;
+- }
+- }
+- }
+-}
+-
+-
+-
+-static ChannelFormatPeerInfoImpl channelFormatPeerInfo;
+-
+-static void
+-channelFormatPeerInfo(TChannel * const channelP,
+- const char ** const peerStringP) {
+-
+- struct socketWin * const socketWinP = channelP->implP;
+-
+- struct sockaddr sockaddr;
+- socklen_t sockaddrLen;
+- int rc;
+-
+- sockaddrLen = sizeof(sockaddr);
+-
+- rc = getpeername(socketWinP->winsock, &sockaddr, &sockaddrLen);
+-
+- if (rc != 0) {
+- int const lastError = WSAGetLastError();
+- xmlrpc_asprintf(peerStringP, "?? getpeername() failed. "
+- "WSAERROR %d (%s)",
+- lastError, getWSAError(lastError));
+- } else {
+- switch (sockaddr.sa_family) {
+- case AF_INET: {
+- struct sockaddr_in * const sockaddrInP =
+- (struct sockaddr_in *) &sockaddr;
+- if (sockaddrLen < sizeof(*sockaddrInP))
+- xmlrpc_asprintf(peerStringP, "??? getpeername() returned "
+- "the wrong size");
+- else {
+- unsigned char * const ipaddr = (unsigned char *)
+- &sockaddrInP->sin_addr.s_addr;
+- xmlrpc_asprintf(peerStringP, "%u.%u.%u.%u:%hu",
+- ipaddr[0], ipaddr[1], ipaddr[2], ipaddr[3],
+- sockaddrInP->sin_port);
+- }
+- } break;
+- default:
+- xmlrpc_asprintf(peerStringP, "??? AF=%u", sockaddr.sa_family);
+- }
+- }
+-}
+-
+-
+-
+-static struct TChannelVtbl const channelVtbl = {
+- &channelDestroy,
+- &channelWrite,
+- &channelRead,
+- &channelWait,
+- &channelInterrupt,
+- &channelFormatPeerInfo,
+-};
+-
+-
+-
+-static void
+-makeChannelFromWinsock(SOCKET const winsock,
+- TChannel ** const channelPP,
+- const char ** const errorP) {
+-
+- struct socketWin * socketWinP;
+-
+- MALLOCVAR(socketWinP);
+-
+- if (socketWinP == NULL)
+- xmlrpc_asprintf(errorP, "Unable to allocate memory for Windows "
+- "socket descriptor");
+- else {
+- TChannel * channelP;
+-
+- socketWinP->winsock = winsock;
+- socketWinP->userSuppliedWinsock = TRUE;
+- socketWinP->interruptEvent = CreateEvent(NULL, FALSE, FALSE, NULL);
+-
+- ChannelCreate(&channelVtbl, socketWinP, &channelP);
+-
+- if (channelP == NULL)
+- xmlrpc_asprintf(errorP, "Unable to allocate memory for "
+- "channel descriptor.");
+- else {
+- *channelPP = channelP;
+- *errorP = NULL;
+- }
+- if (*errorP) {
+- CloseHandle(socketWinP->interruptEvent);
+- free(socketWinP);
+- }
+- }
+-}
+-
+-
+-
+-static void
+-makeChannelInfo(struct abyss_win_chaninfo ** const channelInfoPP,
+- struct sockaddr const peerAddr,
+- socklen_t const peerAddrLen,
+- const char ** const errorP) {
+-
+- struct abyss_win_chaninfo * channelInfoP;
+-
+- MALLOCVAR(channelInfoP);
+-
+- if (channelInfoP == NULL)
+- xmlrpc_asprintf(errorP, "Unable to allocate memory");
+- else {
+- channelInfoP->peerAddrLen = peerAddrLen;
+- channelInfoP->peerAddr = peerAddr;
+-
+- *channelInfoPP = channelInfoP;
+-
+- *errorP = NULL;
+- }
+-}
+-
+-
+-
+-void
+-ChannelWinCreateWinsock(SOCKET const fd,
+- TChannel ** const channelPP,
+- struct abyss_win_chaninfo ** const channelInfoPP,
+- const char ** const errorP) {
+-
+- struct sockaddr peerAddr;
+- socklen_t peerAddrLen;
+- int rc;
+-
+- peerAddrLen = sizeof(peerAddr);
+-
+- rc = getpeername(fd, &peerAddr, &peerAddrLen);
+-
+- if (rc != 0) {
+- int const lastError = WSAGetLastError();
+- if (lastError == WSAENOTCONN) {
+- /* NOTE: This specific string 'not in connected' is
+- required by one of the rpctest suite items, in abyss.c
+- (line 186), hence the separation of the error messages
+- in this case ...
+- */
+- xmlrpc_asprintf(errorP, "Socket on file descriptor %d "
+- "is not in connected state. WSAERROR = %d (%s)",
+- fd, lastError, getWSAError(lastError));
+- } else
+- xmlrpc_asprintf(errorP, "getpeername() failed. WSAERROR = %d (%s)",
+- lastError, getWSAError(lastError));
+- } else {
+- makeChannelInfo(channelInfoPP, peerAddr, peerAddrLen, errorP);
+- if (!*errorP) {
+- makeChannelFromWinsock(fd, channelPP, errorP);
+-
+- if (*errorP)
+- free(*channelInfoPP);
+- }
+- }
+-}
+-
+-
+-/*=============================================================================
+- TChanSwitch
+-=============================================================================*/
+-
+-static SwitchDestroyImpl chanSwitchDestroy;
+-
+-void
+-chanSwitchDestroy(TChanSwitch * const chanSwitchP) {
+-
+- struct socketWin * const socketWinP = chanSwitchP->implP;
+-
+- if (!socketWinP->userSuppliedWinsock)
+- closesocket(socketWinP->winsock);
+-
+- CloseHandle(socketWinP->interruptEvent);
+-
+- free(socketWinP);
+-}
+-
+-
+-
+-static SwitchListenImpl chanSwitchListen;
+-
+-static void
+-chanSwitchListen(TChanSwitch * const chanSwitchP,
+- uint32_t const backlog,
+- const char ** const errorP) {
+-
+- struct socketWin * const socketWinP = chanSwitchP->implP;
+-
+- int32_t const minus1 = -1;
+-
+- int rc;
+-
+- /* Disable the Nagle algorithm to make persistant connections faster */
+-
+- setsockopt(socketWinP->winsock, IPPROTO_TCP, TCP_NODELAY,
+- (const char *)&minus1, sizeof(minus1));
+-
+- rc = listen(socketWinP->winsock, backlog);
+-
+- if (rc != 0) {
+- int const lastError = WSAGetLastError();
+- xmlrpc_asprintf(errorP, "setsockopt() failed with WSAERROR %d (%s)",
+- lastError, getWSAError(lastError));
+- } else
+- *errorP = NULL;
+-}
+-
+-
+-
+-static void
+-createChannelForAccept(int const acceptedWinsock,
+- struct sockaddr const peerAddr,
+- TChannel ** const channelPP,
+- void ** const channelInfoPP,
+- const char ** const errorP) {
+-
+- struct abyss_win_chaninfo * channelInfoP;
+- makeChannelInfo(&channelInfoP, peerAddr, sizeof(peerAddr), errorP);
+- if (!*errorP) {
+- struct socketWin * acceptedSocketP;
+-
+- MALLOCVAR(acceptedSocketP);
+-
+- if (!acceptedSocketP)
+- xmlrpc_asprintf(errorP, "Unable to allocate memory");
+- else {
+- TChannel * channelP;
+-
+- acceptedSocketP->winsock = acceptedWinsock;
+- acceptedSocketP->userSuppliedWinsock = FALSE;
+- acceptedSocketP->interruptEvent =
+- CreateEvent(NULL, FALSE, FALSE, NULL);
+-
+- ChannelCreate(&channelVtbl, acceptedSocketP, &channelP);
+- if (!channelP)
+- xmlrpc_asprintf(errorP,
+- "Failed to create TChannel object.");
+- else {
+- *errorP = NULL;
+- *channelPP = channelP;
+- *channelInfoPP = channelInfoP;
+- }
+- if (*errorP) {
+- CloseHandle(acceptedSocketP->interruptEvent);
+- free(acceptedSocketP);
+- }
+- }
+- }
+-}
+-
+-
+-
+-static SwitchAcceptImpl chanSwitchAccept;
+-
+-static void
+-chanSwitchAccept(TChanSwitch * const chanSwitchP,
+- TChannel ** const channelPP,
+- void ** const channelInfoPP,
+- const char ** const errorP) {
+-/*----------------------------------------------------------------------------
+- Accept a connection via the channel switch *chanSwitchP. Return as
+- *channelPP the channel for the accepted connection.
+-
+- If no connection is waiting at *chanSwitchP, wait until one is.
+-
+- If we receive a signal while waiting, return immediately with
+- *channelPP == NULL.
+------------------------------------------------------------------------------*/
+- struct socketWin * const listenSocketP = chanSwitchP->implP;
+- HANDLE acceptEvent = WSACreateEvent();
+- bool interrupted;
+- TChannel * channelP;
+-
+- interrupted = FALSE; /* Haven't been interrupted yet */
+- channelP = NULL; /* No connection yet */
+- *errorP = NULL; /* No error yet */
+-
+- WSAEventSelect(listenSocketP->winsock, acceptEvent,
+- FD_ACCEPT | FD_CLOSE | FD_READ);
+-
+- while (!channelP && !*errorP && !interrupted) {
+- HANDLE interrupts[2] = {acceptEvent, listenSocketP->interruptEvent};
+- int rc;
+- struct sockaddr peerAddr;
+- socklen_t size = sizeof(peerAddr);
+-
+- rc = WaitForMultipleObjects(2, interrupts, FALSE, INFINITE);
+- if (WAIT_OBJECT_0 + 1 == rc) {
+- interrupted = TRUE;
+- continue;
+- };
+-
+- rc = accept(listenSocketP->winsock, &peerAddr, &size);
+-
+- if (rc >= 0) {
+- int const acceptedWinsock = rc;
+-
+- createChannelForAccept(acceptedWinsock, peerAddr,
+- &channelP, channelInfoPP, errorP);
+-
+- if (*errorP)
+- closesocket(acceptedWinsock);
+- } else {
+- int const lastError = WSAGetLastError();
+-
+- if (lastError == WSAEINTR)
+- interrupted = TRUE;
+- else
+- xmlrpc_asprintf(errorP,
+- "accept() failed, WSA error = %d (%s)",
+- lastError, getWSAError(lastError));
+- }
+- }
+- *channelPP = channelP;
+- CloseHandle(acceptEvent);
+-}
+-
+-
+-
+-static SwitchInterruptImpl chanSwitchInterrupt;
+-
+-static void
+-chanSwitchInterrupt(TChanSwitch * const chanSwitchP) {
+-/*----------------------------------------------------------------------------
+- Interrupt any waiting that a thread might be doing in chanSwitchAccept()
+- now or in the future.
+------------------------------------------------------------------------------*/
+- struct socketWin * const listenSocketP = chanSwitchP->implP;
+-
+- SetEvent(listenSocketP->interruptEvent);
+-}
+-
+-
+-
+-static struct TChanSwitchVtbl const chanSwitchVtbl = {
+- &chanSwitchDestroy,
+- &chanSwitchListen,
+- &chanSwitchAccept,
+- &chanSwitchInterrupt,
+-};
+-
+-
+-
+-static void
+-setSocketOptions(SOCKET const fd,
+- const char ** const errorP) {
+-
+- int32_t const n = 1;
+-
+- int rc;
+-
+- rc = setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, (char*)&n, sizeof(n));
+-
+- if (rc != 0) {
+- int const lastError = WSAGetLastError();
+- xmlrpc_asprintf(errorP, "Failed to set socket options. "
+- "setsockopt() failed with WSAERROR %d (%s)",
+- lastError, getWSAError(lastError));
+- } else
+- *errorP = NULL;
+-}
+-
+-
+-
+-void
+-bindSocketToPort(SOCKET const winsock,
+- struct in_addr * const addrP,
+- uint16_t const portNumber,
+- const char ** const errorP) {
+-
+- struct sockaddr_in name;
+- int rc;
+- int one = 1;
+-
+- ZeroMemory(&name, sizeof(name));
+- name.sin_family = AF_INET;
+- name.sin_port = htons(portNumber);
+- if (addrP)
+- name.sin_addr = *addrP;
+-
+- setsockopt(winsock, SOL_SOCKET, SO_REUSEADDR, (void *)&one, sizeof(int));
+- rc = bind(winsock, (struct sockaddr *)&name, sizeof(name));
+-
+- if (rc != 0) {
+- int const lastError = WSAGetLastError();
+- xmlrpc_asprintf(errorP, "Unable to bind socket to port number %u. "
+- "bind() failed with WSAERROR %i (%s)",
+- portNumber, lastError, getWSAError(lastError));
+- } else
+- *errorP = NULL;
+-}
+-
+-
+-
+-void
+-ChanSwitchWinCreate(uint16_t const portNumber,
+- TChanSwitch ** const chanSwitchPP,
+- const char ** const errorP) {
+-/*----------------------------------------------------------------------------
+- Create a Winsock-based channel switch.
+-
+- Set the socket's local address so that a subsequent "listen" will listen
+- on all IP addresses, port number 'portNumber'.
+------------------------------------------------------------------------------*/
+- struct socketWin * socketWinP;
+-
+- MALLOCVAR(socketWinP);
+-
+- if (!socketWinP)
+- xmlrpc_asprintf(errorP, "Unable to allocate memory for Windows socket "
+- "descriptor structure.");
+- else {
+- SOCKET winsock;
+-
+- winsock = socket(AF_INET, SOCK_STREAM, 0);
+-
+- if (winsock == 0 || winsock == INVALID_SOCKET) {
+- int const lastError = WSAGetLastError();
+- xmlrpc_asprintf(errorP, "socket() failed with WSAERROR %d (%s)",
+- lastError, getWSAError(lastError));
+- } else {
+- socketWinP->winsock = winsock;
+- socketWinP->userSuppliedWinsock = FALSE;
+- socketWinP->interruptEvent = CreateEvent(NULL, FALSE, FALSE, NULL);
+-
+- setSocketOptions(socketWinP->winsock, errorP);
+- if (!*errorP) {
+- bindSocketToPort(socketWinP->winsock, NULL, portNumber,
+- errorP);
+- if (!*errorP)
+- ChanSwitchCreate(&chanSwitchVtbl, socketWinP,
+- chanSwitchPP);
+- }
+-
+- if (*errorP) {
+- CloseHandle(socketWinP->interruptEvent);
+- closesocket(winsock);
+- }
+- }
+- if (*errorP)
+- free(socketWinP);
+- }
+-}
+-
+-
+-
+-void
+-ChanSwitchWinCreateWinsock(SOCKET const winsock,
+- TChanSwitch ** const chanSwitchPP,
+- const char ** const errorP) {
+-
+- struct socketWin * socketWinP;
+-
+- if (connected(winsock))
+- xmlrpc_asprintf(errorP, "Socket is in connected state.");
+- else {
+- MALLOCVAR(socketWinP);
+-
+- if (socketWinP == NULL)
+- xmlrpc_asprintf(errorP, "unable to allocate memory for Windows "
+- "socket descriptor.");
+- else {
+- TChanSwitch * chanSwitchP;
+-
+- socketWinP->winsock = winsock;
+- socketWinP->userSuppliedWinsock = TRUE;
+- socketWinP->interruptEvent = CreateEvent(NULL, FALSE, FALSE, NULL);
+-
+- ChanSwitchCreate(&chanSwitchVtbl, socketWinP, &chanSwitchP);
+-
+- if (chanSwitchP == NULL)
+- xmlrpc_asprintf(errorP, "Unable to allocate memory for "
+- "channel switch descriptor");
+- else {
+- *chanSwitchPP = chanSwitchP;
+- *errorP = NULL;
+- }
+- if (*errorP) {
+- CloseHandle(socketWinP->interruptEvent);
+- free(socketWinP);
+- }
+- }
+- }
+-}
++/*=============================================================================\r
++ socket_win.c\r
++===============================================================================\r
++ This is the implementation of TChanSwitch and TChannel\r
++ for a Winsock socket.\r
++=============================================================================*/\r
++\r
++#include <stdlib.h>\r
++#include <stdio.h>\r
++#include <string.h>\r
++#include <assert.h>\r
++#include <winsock2.h>\r
++\r
++#include "xmlrpc_config.h"\r
++#include "xmlrpc-c/util_int.h"\r
++#include "xmlrpc-c/string_int.h"\r
++#include "mallocvar.h"\r
++#include "trace.h"\r
++#include "chanswitch.h"\r
++#include "channel.h"\r
++#include "socket.h"\r
++#include "xmlrpc-c/abyss.h"\r
++\r
++#include "socket_win.h"\r
++\r
++#ifndef socklen_t\r
++typedef int socklen_t;\r
++#endif\r
++\r
++/* =============================================================\r
++ Provided nice error strings, NOT available in system errors.\r
++ ============================================================= */\r
++\r
++typedef struct tagSOCKERRS {\r
++ int err; // WSAGetLastError() value\r
++ char * desc; // description of error\r
++} SOCKERR;\r
++\r
++/* list shamelessly copied from apache apr errorcodes.c - Grmt 2011-06-16 */\r
++\r
++SOCKERR sSockErr[] = {\r
++ WSAEINTR, "Interrupted system call",\r
++ WSAEBADF, "Bad file number",\r
++ WSAEACCES, "Permission denied",\r
++ WSAEFAULT, "Bad address",\r
++ WSAEINVAL, "Invalid argument",\r
++ WSAEMFILE, "Too many open sockets",\r
++ WSAEWOULDBLOCK, "Operation would block",\r
++ WSAEINPROGRESS, "Operation now in progress",\r
++ WSAEALREADY, "Operation already in progress",\r
++ WSAENOTSOCK, "Socket operation on non-socket",\r
++ WSAEDESTADDRREQ, "Destination address required",\r
++ WSAEMSGSIZE, "Message too long",\r
++ WSAEPROTOTYPE, "Protocol wrong type for socket",\r
++ WSAENOPROTOOPT, "Bad protocol option",\r
++ WSAEPROTONOSUPPORT, "Protocol not supported",\r
++ WSAESOCKTNOSUPPORT, "Socket type not supported",\r
++ WSAEOPNOTSUPP, "Operation not supported on socket",\r
++ WSAEPFNOSUPPORT, "Protocol family not supported",\r
++ WSAEAFNOSUPPORT, "Address family not supported",\r
++ WSAEADDRINUSE, "Address already in use",\r
++ WSAEADDRNOTAVAIL, "Can't assign requested address",\r
++ WSAENETDOWN, "Network is down",\r
++ WSAENETUNREACH, "Network is unreachable",\r
++ WSAENETRESET, "Net connection reset",\r
++ WSAECONNABORTED, "Software caused connection abort",\r
++ WSAECONNRESET, "Connection reset by peer",\r
++ WSAENOBUFS, "No buffer space available",\r
++ WSAEISCONN, "Socket is already connected",\r
++ WSAENOTCONN, "Socket is not connected",\r
++ WSAESHUTDOWN, "Can't send after socket shutdown",\r
++ WSAETOOMANYREFS, "Too many references, can't splice",\r
++ WSAETIMEDOUT, "Connection timed out",\r
++ WSAECONNREFUSED, "Connection refused",\r
++ WSAELOOP, "Too many levels of symbolic links",\r
++ WSAENAMETOOLONG, "File name too long",\r
++ WSAEHOSTDOWN, "Host is down",\r
++ WSAEHOSTUNREACH, "No route to host",\r
++ WSAENOTEMPTY, "Directory not empty",\r
++ WSAEPROCLIM, "Too many processes",\r
++ WSAEUSERS, "Too many users",\r
++ WSAEDQUOT, "Disc quota exceeded",\r
++ WSAESTALE, "Stale NFS file handle",\r
++ WSAEREMOTE, "Too many levels of remote in path",\r
++ WSASYSNOTREADY, "Network system is unavailable",\r
++ WSAVERNOTSUPPORTED, "Winsock version out of range",\r
++ WSANOTINITIALISED, "WSAStartup not yet called",\r
++ WSAEDISCON, "Graceful shutdown in progress",\r
++ WSAHOST_NOT_FOUND, "Host not found",\r
++ WSANO_DATA, "No host data of that type was found",\r
++ 0, NULL\r
++};\r
++\r
++\r
++static const char *\r
++getWSAError(int const wsaErrno) {\r
++\r
++ SOCKERR * pseP;\r
++ \r
++ pseP = &sSockErr[0]; // initial value\r
++ \r
++ while (pseP->desc) {\r
++ if (pseP->err == wsaErrno)\r
++ return pseP->desc;\r
++ \r
++ ++pseP;\r
++ }\r
++\r
++ return "No description available";\r
++}\r
++\r
++\r
++\r
++struct socketWin {\r
++/*----------------------------------------------------------------------------\r
++ The properties/state of a TSocket unique to a Unix TSocket.\r
++-----------------------------------------------------------------------------*/\r
++ SOCKET winsock;\r
++ bool userSuppliedWinsock;\r
++ /* 'socket' was supplied by the user; it belongs to him */\r
++ HANDLE interruptEvent;\r
++};\r
++\r
++static\r
++bool\r
++connected(SOCKET const fd) {\r
++/*----------------------------------------------------------------------------\r
++ Return TRUE iff the socket on file descriptor 'fd' is in the connected\r
++ state.\r
++ If 'fd' does not identify a stream socket or we are unable to determine\r
++ the state of the stream socket, the answer is "false".\r
++-----------------------------------------------------------------------------*/\r
++ bool connected;\r
++ struct sockaddr sockaddr;\r
++ socklen_t nameLen;\r
++ int rc;\r
++\r
++ nameLen = sizeof(sockaddr);\r
++\r
++ rc = getpeername(fd, &sockaddr, &nameLen);\r
++\r
++ if (rc == 0)\r
++ connected = TRUE;\r
++ else\r
++ connected = FALSE;\r
++\r
++ return connected;\r
++}\r
++\r
++\r
++\r
++void\r
++SocketWinInit(const char ** const errorP) {\r
++\r
++ WORD wVersionRequested;\r
++ WSADATA wsaData;\r
++ int err;\r
++ \r
++ wVersionRequested = MAKEWORD(1, 0);\r
++ \r
++ err = WSAStartup(wVersionRequested, &wsaData);\r
++\r
++ if (err != 0) {\r
++ int const lastError = WSAGetLastError();\r
++ xmlrpc_asprintf(errorP, "WSAStartup() faild with error %d (%s)",\r
++ lastError, getWSAError(lastError));\r
++ } else\r
++ *errorP = NULL;\r
++}\r
++\r
++\r
++\r
++void\r
++SocketWinTerm(void) {\r
++ \r
++ WSACleanup();\r
++}\r
++\r
++\r
++\r
++/*=============================================================================\r
++ TChannel\r
++=============================================================================*/\r
++\r
++static ChannelDestroyImpl channelDestroy;\r
++\r
++static void\r
++channelDestroy(TChannel * const channelP) {\r
++\r
++ struct socketWin * const socketWinP = channelP->implP;\r
++\r
++ if (!socketWinP->userSuppliedWinsock)\r
++ closesocket(socketWinP->winsock);\r
++\r
++ CloseHandle(socketWinP->interruptEvent);\r
++\r
++ free(socketWinP);\r
++ channelP->implP = 0;\r
++\r
++}\r
++\r
++\r
++\r
++static ChannelWriteImpl channelWrite;\r
++\r
++static void\r
++channelWrite(TChannel * const channelP,\r
++ const unsigned char * const buffer,\r
++ uint32_t const len,\r
++ bool * const failedP) {\r
++\r
++ struct socketWin * const socketWinP = channelP->implP;\r
++\r
++ size_t bytesLeft;\r
++ bool error;\r
++ int to_count = 0;\r
++ int lastError = 0;\r
++\r
++ for (bytesLeft = len, error = FALSE; bytesLeft > 0 && !error;) {\r
++ size_t const maxSend = 4096 * 2; /* with respect to resource allocation this might be a better value than 2^31 */ \r
++\r
++ int rc = send(socketWinP->winsock, buffer + len - bytesLeft, MIN(maxSend, bytesLeft), 0);\r
++ if (rc > 0) { /* 0 means connection closed; < 0 means severe error */\r
++ to_count = 0;\r
++ bytesLeft -= rc;\r
++ } \r
++ else if (!rc) {\r
++ error = TRUE;\r
++ fprintf(stderr, "Abyss: send() failed: connection closed");\r
++ }\r
++ else {\r
++ error = TRUE;\r
++ lastError = WSAGetLastError();\r
++ if (lastError == WSAEWOULDBLOCK || lastError == ERROR_IO_PENDING) {\r
++ SleepEx(20, TRUE); /* give socket another chance after xx millisec) */\r
++ if (++to_count < 300) {\r
++ error = FALSE;\r
++ }\r
++ // fprintf(stderr, "Abyss: send() failed with errno %d (%s) cnt %d, will retry\n", lastError, getWSAError(lastError), to_count);\r
++ }\r
++ if (error) fprintf(stderr, "Abyss: send() failed with errno %d (%s)\n", lastError, getWSAError(lastError));\r
++ }\r
++ }\r
++\r
++ *failedP = error;\r
++}\r
++\r
++\r
++\r
++static ChannelReadImpl channelRead;\r
++\r
++static void\r
++channelRead(TChannel * const channelP, \r
++ unsigned char * const buffer, \r
++ uint32_t const bufferSize,\r
++ uint32_t * const bytesReceivedP,\r
++ bool * const failedP) {\r
++\r
++ struct socketWin * const socketWinP = channelP->implP;\r
++ int retries = 300; \r
++ \r
++ for (*failedP = TRUE; *failedP && retries; retries--) {\r
++ int rc = recv(socketWinP->winsock, buffer, bufferSize, 0);\r
++ int lastError = WSAGetLastError();\r
++\r
++ if (rc < 0) {\r
++ if (lastError == WSAEWOULDBLOCK || lastError == ERROR_IO_PENDING) {\r
++ fprintf(stderr, "Abyss: recv() failed with errno %d (%s) cnt %d, will retry\n", lastError, getWSAError(lastError), retries);\r
++ SleepEx(30, TRUE); /* give socket another chance after xx millisec)*/\r
++ *failedP = FALSE;\r
++ } else {\r
++ fprintf(stderr, "Abyss: recv() failed with errno %d (%s)\n", lastError, getWSAError(lastError));\r
++ break;\r
++ }\r
++ } else {\r
++ *failedP = FALSE;\r
++ *bytesReceivedP = rc;\r
++\r
++ if (ChannelTraceIsActive)\r
++ fprintf(stderr, "Abyss channel: read %u bytes: '%.*s'\n", bytesReceivedP, (int)(*bytesReceivedP), buffer);\r
++ }\r
++ }\r
++}\r
++\r
++\r
++\r
++static ChannelWaitImpl channelWait;\r
++\r
++static void\r
++channelWait(TChannel * const channelP,\r
++ bool const waitForRead,\r
++ bool const waitForWrite,\r
++ uint32_t const timems,\r
++ bool * const readyToReadP,\r
++ bool * const readyToWriteP,\r
++ bool * const failedP) {\r
++\r
++ struct socketWin * const socketWinP = channelP->implP;\r
++\r
++ fd_set rfds, wfds;\r
++ TIMEVAL tv;\r
++ bool failed, readRdy, writeRdy, timedOut;\r
++\r
++ FD_ZERO(&rfds);\r
++ FD_ZERO(&wfds);\r
++\r
++ if (waitForRead)\r
++ FD_SET(socketWinP->winsock, &rfds);\r
++\r
++ if (waitForWrite)\r
++ FD_SET(socketWinP->winsock, &wfds);\r
++\r
++ tv.tv_sec = timems / 1000;\r
++ tv.tv_usec = timems % 1000;\r
++ \r
++ for (failed = FALSE, readRdy = FALSE, writeRdy = FALSE, timedOut = FALSE;\r
++ !failed && !readRdy && !writeRdy && !timedOut;\r
++ ) {\r
++\r
++ int rc;\r
++\r
++ rc = select(socketWinP->winsock + 1, &rfds, &wfds, NULL,\r
++ (timems == TIME_INFINITE ? NULL : &tv));\r
++\r
++ switch(rc) { \r
++ case 0:\r
++ timedOut = TRUE;\r
++ break;\r
++ case -1: /* socket error */\r
++ if (WSAGetLastError() != WSAEINTR)\r
++ failed = TRUE;\r
++ break;\r
++ default:\r
++ if (FD_ISSET(socketWinP->winsock, &rfds))\r
++ readRdy = TRUE;\r
++ if (FD_ISSET(socketWinP->winsock, &wfds))\r
++ writeRdy = TRUE;\r
++ }\r
++ }\r
++\r
++ if (failedP)\r
++ *failedP = failed;\r
++ if (readyToReadP)\r
++ *readyToReadP = readRdy;\r
++ if (readyToWriteP)\r
++ *readyToWriteP = writeRdy;\r
++}\r
++\r
++\r
++\r
++static ChannelInterruptImpl channelInterrupt;\r
++\r
++static void\r
++channelInterrupt(TChannel * const channelP) {\r
++/*----------------------------------------------------------------------------\r
++ Interrupt any waiting that a thread might be doing in channelWait()\r
++ now or in the future.\r
++\r
++ Actually, this is just a no-op because we don't yet know how to\r
++ accomplish that. (But we could probably do it the same way\r
++ chanSwitchInterrupt() works -- no one has needed it enough yet to do that\r
++ work).\r
++-----------------------------------------------------------------------------*/\r
++\r
++}\r
++\r
++\r
++\r
++void\r
++ChannelWinGetPeerName(TChannel * const channelP,\r
++ struct sockaddr_in * const inAddrP,\r
++ const char ** const errorP) {\r
++\r
++ struct socketWin * const socketWinP = channelP->implP;\r
++\r
++ socklen_t addrlen;\r
++ int rc;\r
++ struct sockaddr sockAddr;\r
++\r
++ addrlen = sizeof(sockAddr);\r
++ \r
++ rc = getpeername(socketWinP->winsock, &sockAddr, &addrlen);\r
++\r
++ if (rc != 0) {\r
++ int const lastError = WSAGetLastError();\r
++ xmlrpc_asprintf(errorP, "getpeername() failed. WSA error = %d (%s)",\r
++ lastError, getWSAError(lastError));\r
++ } else {\r
++ if (addrlen != sizeof(sockAddr))\r
++ xmlrpc_asprintf(errorP, "getpeername() returned a socket address "\r
++ "of the wrong size: %u. Expected %u",\r
++ addrlen, sizeof(sockAddr));\r
++ else {\r
++ if (sockAddr.sa_family != AF_INET)\r
++ xmlrpc_asprintf(errorP,\r
++ "Socket does not use the Inet (IP) address "\r
++ "family. Instead it uses family %d",\r
++ sockAddr.sa_family);\r
++ else {\r
++ *inAddrP = *(struct sockaddr_in *)&sockAddr;\r
++\r
++ *errorP = NULL;\r
++ }\r
++ }\r
++ }\r
++}\r
++\r
++\r
++\r
++static ChannelFormatPeerInfoImpl channelFormatPeerInfo;\r
++\r
++static void\r
++channelFormatPeerInfo(TChannel * const channelP,\r
++ const char ** const peerStringP) {\r
++\r
++ struct socketWin * const socketWinP = channelP->implP;\r
++\r
++ struct sockaddr sockaddr;\r
++ socklen_t sockaddrLen;\r
++ int rc;\r
++\r
++ sockaddrLen = sizeof(sockaddr);\r
++ \r
++ rc = getpeername(socketWinP->winsock, &sockaddr, &sockaddrLen);\r
++ \r
++ if (rc != 0) {\r
++ int const lastError = WSAGetLastError();\r
++ xmlrpc_asprintf(peerStringP, "?? getpeername() failed. "\r
++ "WSAERROR %d (%s)",\r
++ lastError, getWSAError(lastError));\r
++ } else {\r
++ switch (sockaddr.sa_family) {\r
++ case AF_INET: {\r
++ struct sockaddr_in * const sockaddrInP =\r
++ (struct sockaddr_in *) &sockaddr;\r
++ if (sockaddrLen < sizeof(*sockaddrInP))\r
++ xmlrpc_asprintf(peerStringP, "??? getpeername() returned "\r
++ "the wrong size");\r
++ else {\r
++ unsigned char * const ipaddr = (unsigned char *)\r
++ &sockaddrInP->sin_addr.s_addr;\r
++ xmlrpc_asprintf(peerStringP, "%u.%u.%u.%u:%hu",\r
++ ipaddr[0], ipaddr[1], ipaddr[2], ipaddr[3],\r
++ sockaddrInP->sin_port);\r
++ }\r
++ } break;\r
++ default:\r
++ xmlrpc_asprintf(peerStringP, "??? AF=%u", sockaddr.sa_family);\r
++ }\r
++ }\r
++}\r
++\r
++\r
++\r
++static struct TChannelVtbl const channelVtbl = {\r
++ &channelDestroy,\r
++ &channelWrite,\r
++ &channelRead,\r
++ &channelWait,\r
++ &channelInterrupt,\r
++ &channelFormatPeerInfo,\r
++};\r
++\r
++\r
++\r
++static void\r
++makeChannelFromWinsock(SOCKET const winsock,\r
++ TChannel ** const channelPP,\r
++ const char ** const errorP) {\r
++\r
++ struct socketWin * socketWinP;\r
++\r
++ MALLOCVAR(socketWinP);\r
++ \r
++ if (socketWinP == NULL)\r
++ xmlrpc_asprintf(errorP, "Unable to allocate memory for Windows "\r
++ "socket descriptor");\r
++ else {\r
++ TChannel * channelP;\r
++ \r
++ socketWinP->winsock = winsock;\r
++ socketWinP->userSuppliedWinsock = TRUE;\r
++ socketWinP->interruptEvent = CreateEvent(NULL, FALSE, FALSE, NULL);\r
++\r
++ ChannelCreate(&channelVtbl, socketWinP, &channelP);\r
++ \r
++ if (channelP == NULL)\r
++ xmlrpc_asprintf(errorP, "Unable to allocate memory for "\r
++ "channel descriptor.");\r
++ else {\r
++ *channelPP = channelP;\r
++ *errorP = NULL;\r
++ }\r
++ if (*errorP) {\r
++ CloseHandle(socketWinP->interruptEvent);\r
++ free(socketWinP);\r
++ }\r
++ }\r
++}\r
++\r
++\r
++\r
++static void\r
++makeChannelInfo(struct abyss_win_chaninfo ** const channelInfoPP,\r
++ struct sockaddr const peerAddr,\r
++ socklen_t const peerAddrLen,\r
++ const char ** const errorP) {\r
++\r
++ struct abyss_win_chaninfo * channelInfoP;\r
++\r
++ MALLOCVAR(channelInfoP);\r
++ \r
++ if (channelInfoP == NULL)\r
++ xmlrpc_asprintf(errorP, "Unable to allocate memory");\r
++ else {\r
++ channelInfoP->peerAddrLen = peerAddrLen;\r
++ channelInfoP->peerAddr = peerAddr;\r
++ \r
++ *channelInfoPP = channelInfoP;\r
++\r
++ *errorP = NULL;\r
++ }\r
++}\r
++\r
++\r
++\r
++void\r
++ChannelWinCreateWinsock(SOCKET const fd,\r
++ TChannel ** const channelPP,\r
++ struct abyss_win_chaninfo ** const channelInfoPP,\r
++ const char ** const errorP) {\r
++\r
++ struct sockaddr peerAddr;\r
++ socklen_t peerAddrLen;\r
++ int rc;\r
++\r
++ peerAddrLen = sizeof(peerAddr);\r
++\r
++ rc = getpeername(fd, &peerAddr, &peerAddrLen);\r
++\r
++ if (rc != 0) {\r
++ int const lastError = WSAGetLastError();\r
++ if (lastError == WSAENOTCONN) {\r
++ /* NOTE: This specific string 'not in connected' is\r
++ required by one of the rpctest suite items, in abyss.c\r
++ (line 186), hence the separation of the error messages\r
++ in this case ...\r
++ */\r
++ xmlrpc_asprintf(errorP, "Socket on file descriptor %d "\r
++ "is not in connected state. WSAERROR = %d (%s)",\r
++ fd, lastError, getWSAError(lastError));\r
++ } else\r
++ xmlrpc_asprintf(errorP, "getpeername() failed. WSAERROR = %d (%s)",\r
++ lastError, getWSAError(lastError));\r
++ } else {\r
++ makeChannelInfo(channelInfoPP, peerAddr, peerAddrLen, errorP);\r
++ if (!*errorP) {\r
++ makeChannelFromWinsock(fd, channelPP, errorP);\r
++\r
++ if (*errorP)\r
++ free(*channelInfoPP);\r
++ }\r
++ }\r
++}\r
++\r
++\r
++/*=============================================================================\r
++ TChanSwitch\r
++=============================================================================*/\r
++\r
++static SwitchDestroyImpl chanSwitchDestroy;\r
++\r
++void\r
++chanSwitchDestroy(TChanSwitch * const chanSwitchP) {\r
++\r
++ struct socketWin * const socketWinP = chanSwitchP->implP;\r
++\r
++ if (!socketWinP->userSuppliedWinsock)\r
++ closesocket(socketWinP->winsock);\r
++\r
++ CloseHandle(socketWinP->interruptEvent);\r
++\r
++ free(socketWinP);\r
++}\r
++\r
++\r
++\r
++static SwitchListenImpl chanSwitchListen;\r
++\r
++static void\r
++chanSwitchListen(TChanSwitch * const chanSwitchP,\r
++ uint32_t const backlog,\r
++ const char ** const errorP) {\r
++\r
++ struct socketWin * const socketWinP = chanSwitchP->implP;\r
++\r
++ int32_t const minus1 = -1;\r
++\r
++ int rc;\r
++\r
++ /* Disable the Nagle algorithm to make persistant connections faster */\r
++\r
++ setsockopt(socketWinP->winsock, IPPROTO_TCP, TCP_NODELAY,\r
++ (const char *)&minus1, sizeof(minus1));\r
++\r
++ rc = listen(socketWinP->winsock, backlog);\r
++\r
++ if (rc != 0) {\r
++ int const lastError = WSAGetLastError();\r
++ xmlrpc_asprintf(errorP, "setsockopt() failed with WSAERROR %d (%s)",\r
++ lastError, getWSAError(lastError));\r
++ } else\r
++ *errorP = NULL;\r
++}\r
++\r
++\r
++\r
++static void\r
++createChannelForAccept(int const acceptedWinsock,\r
++ struct sockaddr const peerAddr,\r
++ TChannel ** const channelPP,\r
++ void ** const channelInfoPP,\r
++ const char ** const errorP) {\r
++\r
++ struct abyss_win_chaninfo * channelInfoP;\r
++ makeChannelInfo(&channelInfoP, peerAddr, sizeof(peerAddr), errorP);\r
++ if (!*errorP) {\r
++ struct socketWin * acceptedSocketP;\r
++\r
++ MALLOCVAR(acceptedSocketP);\r
++\r
++ if (!acceptedSocketP)\r
++ xmlrpc_asprintf(errorP, "Unable to allocate memory");\r
++ else {\r
++ TChannel * channelP;\r
++\r
++ acceptedSocketP->winsock = acceptedWinsock;\r
++ acceptedSocketP->userSuppliedWinsock = FALSE;\r
++ acceptedSocketP->interruptEvent =\r
++ CreateEvent(NULL, FALSE, FALSE, NULL);\r
++\r
++ ChannelCreate(&channelVtbl, acceptedSocketP, &channelP);\r
++ if (!channelP)\r
++ xmlrpc_asprintf(errorP,\r
++ "Failed to create TChannel object.");\r
++ else {\r
++ *errorP = NULL;\r
++ *channelPP = channelP;\r
++ *channelInfoPP = channelInfoP;\r
++ }\r
++ if (*errorP) {\r
++ CloseHandle(acceptedSocketP->interruptEvent);\r
++ free(acceptedSocketP);\r
++ }\r
++ }\r
++ }\r
++}\r
++\r
++\r
++\r
++static SwitchAcceptImpl chanSwitchAccept;\r
++\r
++static void\r
++chanSwitchAccept(TChanSwitch * const chanSwitchP,\r
++ TChannel ** const channelPP,\r
++ void ** const channelInfoPP,\r
++ const char ** const errorP) {\r
++/*----------------------------------------------------------------------------\r
++ Accept a connection via the channel switch *chanSwitchP. Return as\r
++ *channelPP the channel for the accepted connection.\r
++\r
++ If no connection is waiting at *chanSwitchP, wait until one is.\r
++\r
++ If we receive a signal while waiting, return immediately with\r
++ *channelPP == NULL.\r
++-----------------------------------------------------------------------------*/\r
++ struct socketWin * const listenSocketP = chanSwitchP->implP;\r
++ HANDLE acceptEvent = WSACreateEvent();\r
++ bool interrupted;\r
++ TChannel * channelP;\r
++\r
++ interrupted = FALSE; /* Haven't been interrupted yet */\r
++ channelP = NULL; /* No connection yet */\r
++ *errorP = NULL; /* No error yet */\r
++\r
++ WSAEventSelect(listenSocketP->winsock, acceptEvent,\r
++ FD_ACCEPT | FD_CLOSE | FD_READ);\r
++\r
++ while (!channelP && !*errorP && !interrupted) {\r
++ HANDLE interrupts[2] = {acceptEvent, listenSocketP->interruptEvent};\r
++ int rc;\r
++ struct sockaddr peerAddr;\r
++ socklen_t size = sizeof(peerAddr);\r
++\r
++ rc = WaitForMultipleObjects(2, interrupts, FALSE, INFINITE);\r
++ if (WAIT_OBJECT_0 + 1 == rc) {\r
++ interrupted = TRUE;\r
++ continue;\r
++ };\r
++\r
++ rc = accept(listenSocketP->winsock, &peerAddr, &size);\r
++\r
++ if (rc >= 0) {\r
++ int const acceptedWinsock = rc;\r
++\r
++ createChannelForAccept(acceptedWinsock, peerAddr,\r
++ &channelP, channelInfoPP, errorP);\r
++\r
++ if (*errorP)\r
++ closesocket(acceptedWinsock);\r
++ } else {\r
++ int const lastError = WSAGetLastError();\r
++\r
++ if (lastError == WSAEINTR)\r
++ interrupted = TRUE;\r
++ else\r
++ xmlrpc_asprintf(errorP,\r
++ "accept() failed, WSA error = %d (%s)",\r
++ lastError, getWSAError(lastError));\r
++ }\r
++ }\r
++ *channelPP = channelP;\r
++ CloseHandle(acceptEvent);\r
++}\r
++\r
++\r
++\r
++static SwitchInterruptImpl chanSwitchInterrupt;\r
++\r
++static void\r
++chanSwitchInterrupt(TChanSwitch * const chanSwitchP) {\r
++/*----------------------------------------------------------------------------\r
++ Interrupt any waiting that a thread might be doing in chanSwitchAccept()\r
++ now or in the future.\r
++-----------------------------------------------------------------------------*/\r
++ struct socketWin * const listenSocketP = chanSwitchP->implP;\r
++\r
++ SetEvent(listenSocketP->interruptEvent);\r
++}\r
++\r
++\r
++\r
++static struct TChanSwitchVtbl const chanSwitchVtbl = {\r
++ &chanSwitchDestroy,\r
++ &chanSwitchListen,\r
++ &chanSwitchAccept,\r
++ &chanSwitchInterrupt,\r
++};\r
++\r
++\r
++\r
++static void\r
++setSocketOptions(SOCKET const fd,\r
++ const char ** const errorP) {\r
++\r
++ int32_t const n = 1;\r
++\r
++ int rc;\r
++\r
++ rc = setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, (char*)&n, sizeof(n));\r
++\r
++ if (rc != 0) {\r
++ int const lastError = WSAGetLastError();\r
++ xmlrpc_asprintf(errorP, "Failed to set socket options. "\r
++ "setsockopt() failed with WSAERROR %d (%s)",\r
++ lastError, getWSAError(lastError));\r
++ } else\r
++ *errorP = NULL;\r
++}\r
++\r
++\r
++\r
++void\r
++bindSocketToPort(SOCKET const winsock,\r
++ struct in_addr * const addrP,\r
++ uint16_t const portNumber,\r
++ const char ** const errorP) {\r
++ \r
++ struct sockaddr_in name;\r
++ int rc;\r
++ int one = 1;\r
++\r
++ ZeroMemory(&name, sizeof(name));\r
++ name.sin_family = AF_INET;\r
++ name.sin_port = htons(portNumber);\r
++ if (addrP)\r
++ name.sin_addr = *addrP;\r
++\r
++ setsockopt(winsock, SOL_SOCKET, SO_REUSEADDR, (void *)&one, sizeof(int));\r
++ rc = bind(winsock, (struct sockaddr *)&name, sizeof(name));\r
++\r
++ if (rc != 0) {\r
++ int const lastError = WSAGetLastError();\r
++ xmlrpc_asprintf(errorP, "Unable to bind socket to port number %u. "\r
++ "bind() failed with WSAERROR %i (%s)",\r
++ portNumber, lastError, getWSAError(lastError));\r
++ } else\r
++ *errorP = NULL;\r
++}\r
++\r
++\r
++\r
++void\r
++ChanSwitchWinCreate(uint16_t const portNumber,\r
++ TChanSwitch ** const chanSwitchPP,\r
++ const char ** const errorP) {\r
++/*----------------------------------------------------------------------------\r
++ Create a Winsock-based channel switch.\r
++\r
++ Set the socket's local address so that a subsequent "listen" will listen\r
++ on all IP addresses, port number 'portNumber'.\r
++-----------------------------------------------------------------------------*/\r
++ struct socketWin * socketWinP;\r
++\r
++ MALLOCVAR(socketWinP);\r
++\r
++ if (!socketWinP)\r
++ xmlrpc_asprintf(errorP, "Unable to allocate memory for Windows socket "\r
++ "descriptor structure.");\r
++ else {\r
++ SOCKET winsock;\r
++\r
++ winsock = socket(AF_INET, SOCK_STREAM, 0);\r
++\r
++ if (winsock == 0 || winsock == INVALID_SOCKET) {\r
++ int const lastError = WSAGetLastError();\r
++ xmlrpc_asprintf(errorP, "socket() failed with WSAERROR %d (%s)",\r
++ lastError, getWSAError(lastError));\r
++ } else {\r
++ socketWinP->winsock = winsock;\r
++ socketWinP->userSuppliedWinsock = FALSE;\r
++ socketWinP->interruptEvent = CreateEvent(NULL, FALSE, FALSE, NULL);\r
++ \r
++ setSocketOptions(socketWinP->winsock, errorP);\r
++ if (!*errorP) {\r
++ bindSocketToPort(socketWinP->winsock, NULL, portNumber,\r
++ errorP);\r
++ if (!*errorP)\r
++ ChanSwitchCreate(&chanSwitchVtbl, socketWinP,\r
++ chanSwitchPP);\r
++ }\r
++\r
++ if (*errorP) {\r
++ CloseHandle(socketWinP->interruptEvent);\r
++ closesocket(winsock);\r
++ }\r
++ }\r
++ if (*errorP)\r
++ free(socketWinP);\r
++ }\r
++}\r
++\r
++\r
++\r
++void\r
++ChanSwitchWinCreateWinsock(SOCKET const winsock,\r
++ TChanSwitch ** const chanSwitchPP,\r
++ const char ** const errorP) {\r
++\r
++ struct socketWin * socketWinP;\r
++\r
++ if (connected(winsock))\r
++ xmlrpc_asprintf(errorP, "Socket is in connected state.");\r
++ else {\r
++ MALLOCVAR(socketWinP);\r
++\r
++ if (socketWinP == NULL)\r
++ xmlrpc_asprintf(errorP, "unable to allocate memory for Windows "\r
++ "socket descriptor.");\r
++ else {\r
++ TChanSwitch * chanSwitchP;\r
++\r
++ socketWinP->winsock = winsock;\r
++ socketWinP->userSuppliedWinsock = TRUE;\r
++ socketWinP->interruptEvent = CreateEvent(NULL, FALSE, FALSE, NULL);\r
++\r
++ ChanSwitchCreate(&chanSwitchVtbl, socketWinP, &chanSwitchP);\r
++\r
++ if (chanSwitchP == NULL)\r
++ xmlrpc_asprintf(errorP, "Unable to allocate memory for "\r
++ "channel switch descriptor");\r
++ else {\r
++ *chanSwitchPP = chanSwitchP;\r
++ *errorP = NULL;\r
++ }\r
++ if (*errorP) {\r
++ CloseHandle(socketWinP->interruptEvent);\r
++ free(socketWinP);\r
++ }\r
++ }\r
++ }\r
++}\r
diff --git a/libs/xmlrpc-c/lib/abyss/src/thread.c b/libs/xmlrpc-c/lib/abyss/src/thread.c
deleted file mode 100644
index b3d49c7..0000000
+# Need this dependency for those who don't use depend.mk.
# Without it, version.h doesn't get created.
xmlrpc_curl_transport.o xmlrpc_curl_transport.osh: version.h
-diff --git a/libs/xmlrpc-c/lib/curl_transport/xmlrpc_curl_transport.c b/libs/xmlrpc-c/lib/curl_transport/xmlrpc_curl_transport.c
-index 29104b9..fe705b9 100644
---- a/libs/xmlrpc-c/lib/curl_transport/xmlrpc_curl_transport.c
-+++ b/libs/xmlrpc-c/lib/curl_transport/xmlrpc_curl_transport.c
-@@ -52,6 +52,8 @@
- such subordinate libraries as OpenSSL and Winsock.
- -----------------------------------------------------------------------------*/
-
+diff --git a/libs/xmlrpc-c/lib/curl_transport/Makefile.depend b/libs/xmlrpc-c/lib/curl_transport/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
+diff --git a/libs/xmlrpc-c/lib/curl_transport/curlmulti.c b/libs/xmlrpc-c/lib/curl_transport/curlmulti.c
+new file mode 100644
+index 0000000..8f985de
+--- /dev/null
++++ b/libs/xmlrpc-c/lib/curl_transport/curlmulti.c
+@@ -0,0 +1,313 @@
++/*=============================================================================
++ curlMulti
++===============================================================================
++ This is an extension to Curl's CURLM object. The extensions are:
++
++ 1) It has a lock so multiple threads can use it simultaneously.
++
++ 2) Its "select" file descriptor vectors are self-contained. CURLM
++ requires the user to maintain them separately.
++=============================================================================*/
++
+#define _XOPEN_SOURCE 600 /* Make sure strdup() is in <string.h> */
+
- #include "xmlrpc_config.h"
-
- #include <string.h>
-@@ -59,7 +61,7 @@
- #include <errno.h>
- #include <assert.h>
- #include <limits.h>
--#if !MSVCRT
++#include "xmlrpc_config.h"
++
++#include <stdlib.h>
+#if HAVE_SYS_SELECT_H
- #include <sys/select.h>
- #endif
- #include <signal.h>
-@@ -75,18 +77,24 @@
- #include "girstring.h"
- #include "pthreadx.h"
-
++#include <sys/select.h>
++#endif
++
++#include <curl/curl.h>
++#include <curl/types.h>
++#include <curl/easy.h>
++#include <curl/multi.h>
++
++#include "mallocvar.h"
+#include "xmlrpc-c/util.h"
- #include "xmlrpc-c/string_int.h"
- #include "xmlrpc-c/select_int.h"
- #include "xmlrpc-c/client_int.h"
- #include "xmlrpc-c/transport.h"
- #include "xmlrpc-c/time_int.h"
--#include "version.h"
-
- #include <curl/curl.h>
- #include <curl/types.h>
- #include <curl/easy.h>
- #include <curl/multi.h>
-
++#include "xmlrpc-c/string_int.h"
++
++#include "curlversion.h"
+#include "lock.h"
+#include "lock_pthread.h"
-+#include "curltransaction.h"
++
+#include "curlmulti.h"
-+#include "curlversion.h"
+
- #if MSVCRT
- #if defined(_DEBUG)
- # include <crtdbg.h>
-@@ -98,92 +106,8 @@
- #endif
-
-
--#define CMAJOR LIBCURL_VERSION_MAJOR
--#define CMINOR LIBCURL_VERSION_MINOR
--#if CMAJOR > 7 || (CMAJOR == 7 && CMINOR >= 10)
-- #define HAVE_CURL_NOSIGNAL 1
--#else
-- #define HAVE_CURL_NOSIGNAL 0
--#endif
--#if CMAJOR > 7 || (CMAJOR == 7 && CMINOR >= 12)
-- #define HAVE_CURL_STRERROR 1
--#else
-- #define HAVE_CURL_STRERROR 0
--#endif
--
--#undef CMAJOR
--#undef CMINOR
--
--
--
- typedef struct rpc rpc;
-
--typedef struct curlTransaction curlTransaction;
--
--
--
--struct curlSetup {
--
-- /* This is all client transport properties that are implemented as
-- simple Curl session properties (i.e. the transport basically just
-- passes them through to Curl without looking at them).
--
-- People occasionally want to replace all this with something where
-- the Xmlrpc-c user simply does the curl_easy_setopt() call and this
-- code need not know about all these options. Unfortunately, that's
-- a significant modularity violation. Either the Xmlrpc-c user
-- controls the Curl object or he doesn't. If he does, then he
-- shouldn't use libxmlrpc_client -- he should just copy some of this
-- code into his own program. If he doesn't, then he should never see
-- the Curl library.
--
-- Speaking of modularity: the only reason this is a separate struct
-- is to make the code easier to manage. Ideally, the fact that these
-- particular properties of the transport are implemented by simple
-- Curl session setup would be known only at the lowest level code
-- that does that setup.
-- */
--
-- const char * networkInterface;
-- /* This identifies the network interface on the local side to
-- use for the session. It is an ASCIIZ string in the form
-- that the Curl recognizes for setting its CURLOPT_INTERFACE
-- option (also the --interface option of the Curl program).
-- E.g. "9.1.72.189" or "giraffe-data.com" or "eth0".
--
-- It isn't necessarily valid, but it does have a terminating NUL.
--
-- NULL means we have no preference.
-- */
-- xmlrpc_bool sslVerifyPeer;
-- /* In an SSL connection, we should authenticate the server's SSL
-- certificate -- refuse to talk to him if it isn't authentic.
-- This is equivalent to Curl's CURLOPT_SSL_VERIFY_PEER option.
-- */
-- xmlrpc_bool sslVerifyHost;
-- /* In an SSL connection, we should verify that the server's
-- certificate (independently of whether the certificate is
-- authentic) indicates the host name that is in the URL we
-- are using for the server.
-- */
--
-- const char * sslCert;
-- const char * sslCertType;
-- const char * sslCertPasswd;
-- const char * sslKey;
-- const char * sslKeyType;
-- const char * sslKeyPasswd;
-- const char * sslEngine;
-- bool sslEngineDefault;
-- unsigned int sslVersion;
-- const char * caInfo;
-- const char * caPath;
-- const char * randomFile;
-- const char * egdSocket;
-- const char * sslCipherList;
-- unsigned int timeout;
-- /* 0 = no Curl timeout. This is in milliseconds. */
--};
-
-
- static int
-@@ -239,939 +163,248 @@ addMilliseconds(xmlrpc_timespec const addend,
-
-
-
--/*============================================================================
-- locks
--==============================================================================
-- This is the beginnings of a lock abstraction that will allow this
-- transport to be used with locks other than pthread locks
--============================================================================*/
--
--struct lock {
-- pthread_mutex_t theLock;
-- void (*lock)(struct lock *);
-- void (*unlock)(struct lock *);
-- void (*destroy)(struct lock *);
--};
--
--typedef struct lock lock;
-+struct xmlrpc_client_transport {
-+ CURL * syncCurlSessionP;
-+ /* Handle for a Curl library session object that we use for
-+ all synchronous RPCs. An async RPC has one of its own,
-+ and consequently does not share things such as persistent
-+ connections and cookies with any other RPC.
-+ */
-+ lock * syncCurlSessionLockP;
-+ /* Hold this lock while accessing or using *syncCurlSessionP.
-+ You're using the session from the time you set any
-+ attributes in it or start a transaction with it until any
-+ transaction has finished and you've lost interest in any
-+ attributes of the session.
-+ */
-+ curlMulti * syncCurlMultiP;
-+ /* The Curl multi manager that this transport uses to execute
-+ Curl transactions for RPCs requested via the synchronous
-+ interface. The fact that there is never more than one such
-+ transaction going at a time might make you wonder why a
-+ "multi" manager is needed. The reason is that it is the only
-+ interface in libcurl that gives us the flexibility to execute
-+ the transaction with proper interruptibility. The only Curl
-+ transaction ever attached to this multi manager is
-+ 'syncCurlSessionP'.
-+
-+ This is constant (the handle, not the object).
-+ */
-+ curlMulti * asyncCurlMultiP;
-+ /* The Curl multi manager that this transport uses to execute
-+ Curl transactions for RPCs requested via the asynchronous
-+ interface. Note that there may be multiple such Curl transactions
-+ simultaneously and one can't wait for a particular one to finish;
-+ the collection of asynchronous RPCs are an indivisible mass.
-+
-+ This is constant (the handle, not the object).
++
++
++static void
++interpretCurlMultiError(const char ** const descriptionP,
++ CURLMcode const code) {
++
++#if HAVE_CURL_STRERROR
++ *descriptionP = strdup(curl_multi_strerror(code));
++#else
++ xmlrpc_asprintf(descriptionP, "Curl error code (CURLMcode) %d", code);
++#endif
++}
++
++
++
++struct curlMulti {
++ CURLM * curlMultiP;
++ lock * lockP;
++ /* Hold this lock while accessing or using *curlMultiP. You're
++ using the multi manager whenever you're calling a Curl
++ library multi manager function.
+ */
-+ bool dontAdvertise;
-+ /* Don't identify to the server the XML-RPC engine we are using. If
-+ false, include a User-Agent HTTP header in all requests that
-+ identifies the Xmlrpc-c and Curl libraries.
-
--static void
--lock_pthread(struct lock * const lockP) {
-- pthread_mutex_lock(&lockP->theLock);
--}
-+ See also 'userAgent'.
-
--static void
--unlock_pthread(struct lock * const lockP) {
-- pthread_mutex_unlock(&lockP->theLock);
--}
-+ This is constant.
++ /* The following file descriptor sets are an integral part of the
++ CURLM object; Our curlMulti_fdset() routine binds them to the
++ CURLM object, and said object expects us to use them in a very
++ specific way, including doing a select() on them. It is very,
++ very messy.
++ */
++ fd_set readFdSet;
++ fd_set writeFdSet;
++ fd_set exceptFdSet;
++};
++
++
++
++curlMulti *
++curlMulti_create(void) {
++
++ curlMulti * retval;
++ curlMulti * curlMultiP;
++
++ MALLOCVAR(curlMultiP);
++
++ if (curlMultiP == NULL)
++ retval = NULL;
++ else {
++ curlMultiP->lockP = curlLock_create_pthread();
++
++ if (curlMultiP->lockP == NULL)
++ retval = NULL;
++ else {
++ curlMultiP->curlMultiP = curl_multi_init();
++ if (curlMultiP->curlMultiP == NULL)
++ retval = NULL;
++ else
++ retval = curlMultiP;
++
++ if (retval == NULL)
++ curlMultiP->lockP->destroy(curlMultiP->lockP);
++ }
++ if (retval == NULL)
++ free(curlMultiP);
++ }
++ return retval;
++}
++
++
++
++void
++curlMulti_destroy(curlMulti * const curlMultiP) {
++
++ curl_multi_cleanup(curlMultiP->curlMultiP);
++
++ curlMultiP->lockP->destroy(curlMultiP->lockP);
++
++ free(curlMultiP);
++}
++
++
++
++void
++curlMulti_perform(xmlrpc_env * const envP,
++ curlMulti * const curlMultiP,
++ bool * const immediateWorkToDoP,
++ int * const runningHandlesP) {
++/*----------------------------------------------------------------------------
++ Do whatever work is ready to be done under the control of multi
++ manager 'curlMultiP'. E.g. if HTTP response data has recently arrived
++ from the network, process it as an HTTP response.
++
++ Iff this results in some work being finished from our point of view,
++ return *immediateWorkToDoP. (Caller can query the multi manager for
++ messages and find out what it is).
++
++ Return as *runningHandlesP the number of Curl easy handles under the
++ multi manager's control that are still running -- yet to finish.
++-----------------------------------------------------------------------------*/
++ CURLMcode rc;
++
++ curlMultiP->lockP->acquire(curlMultiP->lockP);
++
++ rc = curl_multi_perform(curlMultiP->curlMultiP, runningHandlesP);
++
++ curlMultiP->lockP->release(curlMultiP->lockP);
++
++ if (rc == CURLM_CALL_MULTI_PERFORM) {
++ *immediateWorkToDoP = true;
++ } else {
++ *immediateWorkToDoP = false;
++
++ if (rc != CURLM_OK) {
++ const char * reason;
++ interpretCurlMultiError(&reason, rc);
++ xmlrpc_faultf(envP, "Impossible failure of curl_multi_perform(): "
++ "%s", reason);
++ xmlrpc_strfree(reason);
++ }
++ }
++}
++
++
++
++void
++curlMulti_addHandle(xmlrpc_env * const envP,
++ curlMulti * const curlMultiP,
++ CURL * const curlSessionP) {
++
++ CURLMcode rc;
++
++ curlMultiP->lockP->acquire(curlMultiP->lockP);
++
++ rc = curl_multi_add_handle(curlMultiP->curlMultiP, curlSessionP);
++
++ curlMultiP->lockP->release(curlMultiP->lockP);
++
++ if (rc != CURLM_OK) {
++ const char * reason;
++ interpretCurlMultiError(&reason, rc);
++ xmlrpc_faultf(envP, "Could not add Curl session to the "
++ "curl multi manager. curl_multi_add_handle() "
++ "failed: %s", reason);
++ xmlrpc_strfree(reason);
++ }
++}
++
++
++void
++curlMulti_removeHandle(curlMulti * const curlMultiP,
++ CURL * const curlSessionP) {
++
++ curlMultiP->lockP->acquire(curlMultiP->lockP);
++
++ curl_multi_remove_handle(curlMultiP->curlMultiP, curlSessionP);
++
++ curlMultiP->lockP->release(curlMultiP->lockP);
++}
++
++
++
++void
++curlMulti_getMessage(curlMulti * const curlMultiP,
++ bool * const endOfMessagesP,
++ CURLMsg * const curlMsgP) {
++/*----------------------------------------------------------------------------
++ Get the next message from the queue of things the Curl multi manager
++ wants to say to us.
++
++ Return the message as *curlMsgP.
++
++ Iff there are no messages in the queue, return *endOfMessagesP == true.
++-----------------------------------------------------------------------------*/
++ int remainingMsgCount;
++ CURLMsg * privateCurlMsgP;
++ /* Note that this is a pointer into the multi manager's memory,
++ so we have to use it under lock.
+ */
-+ const char * userAgent;
-+ /* Information to include in a User-Agent HTTP header, reflecting
-+ facilities outside of Xmlrpc-c.
-
--static void
--destroyLock_pthread(struct lock * const lockP) {
-- pthread_mutex_destroy(&lockP->theLock);
-- free(lockP);
--}
-+ Null means none.
-
-+ The full User-Agent header value is this information (if
-+ 'userAgent' is non-null) followed by identification of Xmlrpc-c
-+ and Curl (if 'dontAdvertise' is false). If 'userAgent' is null
-+ and 'dontAdvertise' is true, we put no User-Agent header at all
-+ in the request.
-
--static struct lock *
--createLock_pthread(void) {
-- struct lock * lockP;
-- MALLOCVAR(lockP);
-- if (lockP) {
-- pthread_mutex_init(&lockP->theLock, NULL);
-- lockP->lock = &lock_pthread;
-- lockP->unlock = &unlock_pthread;
-- lockP->destroy = &destroyLock_pthread;
-- }
-- return lockP;
--}
-+ This is constant.
++
++ curlMultiP->lockP->acquire(curlMultiP->lockP);
++
++ privateCurlMsgP = curl_multi_info_read(curlMultiP->curlMultiP,
++ &remainingMsgCount);
++
++ if (privateCurlMsgP == NULL)
++ *endOfMessagesP = true;
++ else {
++ *endOfMessagesP = false;
++ *curlMsgP = *privateCurlMsgP;
++ }
++ curlMultiP->lockP->release(curlMultiP->lockP);
++}
++
++
++
++void
++curlMulti_fdset(xmlrpc_env * const envP,
++ curlMulti * const curlMultiP,
++ fd_set * const readFdSetP,
++ fd_set * const writeFdSetP,
++ fd_set * const exceptFdSetP,
++ int * const maxFdP) {
++/*----------------------------------------------------------------------------
++ Set the CURLM object's file descriptor sets to those in the
++ curlMulti object, update those file descriptor sets with the
++ current needs of the multi manager, and return the resulting values
++ of the file descriptor sets.
++
++ This is a bizarre operation, but is necessary because of the nonmodular
++ way in which the Curl multi interface works with respect to waiting
++ for work with select().
++-----------------------------------------------------------------------------*/
++ CURLMcode rc;
++
++ curlMultiP->lockP->acquire(curlMultiP->lockP);
++
++ /* curl_multi_fdset() doesn't _set_ the fdsets. It adds to existing
++ ones (so you can easily do a select() on other fds and Curl
++ fds at the same time). So we have to clear first:
++ */
++ FD_ZERO(&curlMultiP->readFdSet);
++ FD_ZERO(&curlMultiP->writeFdSet);
++ FD_ZERO(&curlMultiP->exceptFdSet);
++
++ /* WARNING: curl_multi_fdset() doesn't just update the fdsets pointed
++ to by its arguments. It makes the CURLM object remember those
++ pointers and refer back to them later! In fact, curl_multi_perform
++ expects its caller to have done a select() on those masks. No,
++ really. The man page even admits it.
++
++ Inspection of the Libcurl code in March 2007 indicates that
++ this isn't actually true -- curl_multi_fdset() updates your
++ fdset and doesn't remember the pointer at all. I.e. it's just
++ what you would expect. The man pages still says it's as
++ described above. My guess is that Libcurl was fixed at some
++ time and the man page not updated. In any case, we have to
++ work with old Libcurl if at all possible, so we still maintain
++ these fdsets as if they belong to the CURLM object.
++ */
++
++ rc = curl_multi_fdset(curlMultiP->curlMultiP,
++ &curlMultiP->readFdSet,
++ &curlMultiP->writeFdSet,
++ &curlMultiP->exceptFdSet,
++ maxFdP);
++
++ *readFdSetP = curlMultiP->readFdSet;
++ *writeFdSetP = curlMultiP->writeFdSet;
++ *exceptFdSetP = curlMultiP->exceptFdSet;
++
++ curlMultiP->lockP->release(curlMultiP->lockP);
++
++ if (rc != CURLM_OK) {
++ const char * reason;
++ interpretCurlMultiError(&reason, rc);
++ xmlrpc_faultf(envP, "Impossible failure of curl_multi_fdset(): %s",
++ reason);
++ xmlrpc_strfree(reason);
++ }
++}
++
++
++
++void
++curlMulti_updateFdSet(curlMulti * const curlMultiP,
++ fd_set const readFdSet,
++ fd_set const writeFdSet,
++ fd_set const exceptFdSet) {
++/*----------------------------------------------------------------------------
++ curl_multi_perform() expects the file descriptor sets, which were bound
++ to the CURLM object via a prior curlMulti_fdset(), to contain the results
++ of a recent select(). This subroutine provides you a way to supply those.
++-----------------------------------------------------------------------------*/
++ curlMultiP->readFdSet = readFdSet;
++ curlMultiP->writeFdSet = writeFdSet;
++ curlMultiP->exceptFdSet = exceptFdSet;
++}
++
++
++
+diff --git a/libs/xmlrpc-c/lib/curl_transport/curlmulti.h b/libs/xmlrpc-c/lib/curl_transport/curlmulti.h
+new file mode 100644
+index 0000000..265ed0c
+--- /dev/null
++++ b/libs/xmlrpc-c/lib/curl_transport/curlmulti.h
+@@ -0,0 +1,51 @@
++#ifndef CURLMULTI_H_INCLUDED
++#define CURLMULTI_H_INCLUDED
++
++#include "bool.h"
++#include "xmlrpc-c/util.h"
++
++#include "curltransaction.h"
++
++typedef struct curlMulti curlMulti;
++
++curlMulti *
++curlMulti_create(void);
++
++void
++curlMulti_destroy(curlMulti * const curlMultiP);
++
++void
++curlMulti_perform(xmlrpc_env * const envP,
++ curlMulti * const curlMultiP,
++ bool * const immediateWorkToDoP,
++ int * const runningHandlesP);
++
++void
++curlMulti_addHandle(xmlrpc_env * const envP,
++ curlMulti * const curlMultiP,
++ CURL * const curlSessionP);
++
++void
++curlMulti_removeHandle(curlMulti * const curlMultiP,
++ CURL * const curlSessionP);
++
++void
++curlMulti_getMessage(curlMulti * const curlMultiP,
++ bool * const endOfMessagesP,
++ CURLMsg * const curlMsgP);
++
++void
++curlMulti_fdset(xmlrpc_env * const envP,
++ curlMulti * const curlMultiP,
++ fd_set * const readFdSetP,
++ fd_set * const writeFdSetP,
++ fd_set * const exceptFdSetP,
++ int * const maxFdP);
++
++void
++curlMulti_updateFdSet(curlMulti * const curlMultiP,
++ fd_set const readFdSet,
++ fd_set const writeFdSet,
++ fd_set const exceptFdSet);
++
++#endif
+diff --git a/libs/xmlrpc-c/lib/curl_transport/curltransaction.c b/libs/xmlrpc-c/lib/curl_transport/curltransaction.c
+new file mode 100644
+index 0000000..0d3d65f
+--- /dev/null
++++ b/libs/xmlrpc-c/lib/curl_transport/curltransaction.c
+@@ -0,0 +1,753 @@
++/*=============================================================================
++ curlTransaction
++=============================================================================*/
++
++#define _XOPEN_SOURCE 600 /* Make sure strdup() is in <string.h> */
++
++#include <assert.h>
++#include <string.h>
++#include <stdlib.h>
++
++#include "mallocvar.h"
++
++#include "xmlrpc-c/util.h"
++#include "xmlrpc-c/string_int.h"
++#include "xmlrpc-c/client.h"
++#include "xmlrpc-c/client_int.h"
++#include "version.h"
++
++#include <curl/curl.h>
++#include <curl/types.h>
++#include <curl/easy.h>
++
++#include "curlversion.h"
++
++#include "curltransaction.h"
++
++
++struct curlTransaction {
++ /* This is all stuff that really ought to be in a Curl object, but
++ the Curl library is a little too simple for that. So we build
++ a layer on top of Curl, and define this "transaction," as an
++ object subordinate to a Curl "session." A Curl session has
++ zero or one transactions in progress. The Curl session
++ "private data" is a pointer to the CurlTransaction object for
++ the current transaction.
++ */
++ CURL * curlSessionP;
++ /* Handle for the Curl session that hosts this transaction.
++ Note that only one transaction at a time can use a particular
++ Curl session, so this had better not be a session that some other
++ transaction is using simultaneously.
+ */
-+ struct curlSetup curlSetupStuff;
-+ /* This is constant */
-+ int * interruptP;
-+ /* Pointer to a value that user sets to nonzero to indicate he wants
-+ the transport to give up on whatever it is doing and return ASAP.
-
-+ NULL means none -- transport never gives up.
-
-+ This is constant.
++ curlt_finishFn * finish;
++ curlt_progressFn * progress;
++ void * userContextP;
++ /* Meaningful to our client; opaque to us */
++ CURLcode result;
++ /* Result of the transaction (succeeded, TCP connect failed, etc.).
++ A properly executed HTTP transaction (request & response) counts
++ as a successful transaction. When 'result' show success,
++ curl_easy_get_info() tells you whether the transaction succeeded
++ at the HTTP level.
+ */
++ char curlError[CURL_ERROR_SIZE];
++ /* Error message from Curl */
++ struct curl_slist * headerList;
++ /* The HTTP headers for the transaction */
++ const char * serverUrl; /* malloc'ed - belongs to this object */
+};
-
--/*=============================================================================
-- curlTransaction
--=============================================================================*/
-
--typedef void finishCurlTransactionFn(xmlrpc_env * const, curlTransaction * const);
-
--struct curlTransaction {
-- /* This is all stuff that really ought to be in a Curl object, but
-- the Curl library is a little too simple for that. So we build
-- a layer on top of Curl, and define this "transaction," as an
-- object subordinate to a Curl "session." A Curl session has
-- zero or one transactions in progress. The Curl session
-- "private data" is a pointer to the CurlTransaction object for
-- the current transaction.
-- */
-+struct rpc {
-+ struct xmlrpc_client_transport * transportP;
-+ /* The client XML transport that transports this RPC */
-+ curlTransaction * curlTransactionP;
-+ /* The object which does the HTTP transaction, with no knowledge
-+ of XML-RPC or Xmlrpc-c.
++
++
++
++static void
++addHeader(xmlrpc_env * const envP,
++ struct curl_slist ** const headerListP,
++ const char * const headerText) {
++
++ struct curl_slist * newHeaderList;
++ newHeaderList = curl_slist_append(*headerListP, headerText);
++ if (newHeaderList == NULL)
++ xmlrpc_faultf(envP,
++ "Could not add header '%s'. "
++ "curl_slist_append() failed.", headerText);
++ else
++ *headerListP = newHeaderList;
++}
++
++
++
++static void
++addContentTypeHeader(xmlrpc_env * const envP,
++ struct curl_slist ** const headerListP) {
++
++ addHeader(envP, headerListP, "Content-Type: text/xml");
++}
++
++
++
++static const char *
++xmlrpcUserAgentPart(bool const reportIt) {
++
++ const char * retval;
++
++ if (reportIt) {
++ curl_version_info_data * const curlInfoP =
++ curl_version_info(CURLVERSION_NOW);
++ char curlVersion[32];
++
++ snprintf(curlVersion, sizeof(curlVersion), "%u.%u.%u",
++ (curlInfoP->version_num >> 16) && 0xff,
++ (curlInfoP->version_num >> 8) && 0xff,
++ (curlInfoP->version_num >> 0) && 0xff
++ );
++
++ xmlrpc_asprintf(&retval,
++ "Xmlrpc-c/%s Curl/%s",
++ XMLRPC_C_VERSION, curlVersion);
++ } else
++ xmlrpc_asprintf(&retval, "%s", "");
++
++ return retval;
++}
++
++
++
++static void
++addUserAgentHeader(xmlrpc_env * const envP,
++ struct curl_slist ** const headerListP,
++ bool const reportXmlrpc,
++ const char * const userAgent) {
++/*----------------------------------------------------------------------------
++ Add a User-Agent HTTP header to the Curl header list *headerListP,
++ if appropriate.
++
++ 'reportXmlrpc' means we want to tell the client what XML-RPC agent
++ is being used -- Xmlrpc-c and layers below.
++
++ 'userAgent' is a string describing the layers above Xmlrpc-c. We
++ assume it is in the proper format to be included in a User-Agent
++ header. (We should probably fix that some day -- take ownership
++ of that format).
++-----------------------------------------------------------------------------*/
++ if (reportXmlrpc || userAgent) {
++ /* Add the header */
++
++ /* Note: Curl has a CURLOPT_USERAGENT option that does some of this
++ work. We prefer to be totally in control, though, so we build
++ the header explicitly.
+ */
- CURL * curlSessionP;
-- /* Handle for the Curl session that hosts this transaction.
-- Note that only one transaction at a time can use a particular
-- Curl session, so this had better not be a session that some other
-- transaction is using simultaneously.
-+ /* The Curl session to use for the Curl transaction to perform
-+ the RPC.
- */
-- finishCurlTransactionFn * finish;
-- rpc * rpcP;
-- /* The RPC which this transaction serves. (If this structure
-- were a true extension of the Curl library as described above,
-- this would be a void *, since the Curl library doesn't know what
-- an RPC is, but since we use it only for that, we might as well
-- use the specific type here).
-+ xmlrpc_mem_block * responseXmlP;
-+ /* Where the response XML for this RPC should go or has gone. */
-+ xmlrpc_transport_asynch_complete complete;
-+ /* Routine to call to complete the RPC after it is complete HTTP-wise.
-+ NULL if none.
- */
-- CURLcode result;
-- /* Result of the transaction (succeeded, TCP connect failed, etc.).
-- A properly executed HTTP transaction (request & response) counts
-- as a successful transaction. When 'result' show success,
-- curl_easy_get_info() tells you whether the transaction succeeded
-- at the HTTP level.
-+ xmlrpc_transport_progress progress;
-+ /* Routine to call periodically to report the progress of transporting
-+ the call and response. NULL if none.
- */
-- char curlError[CURL_ERROR_SIZE];
-- /* Error message from Curl */
-- struct curl_slist * headerList;
-- /* The HTTP headers for the transaction */
-- const char * serverUrl; /* malloc'ed - belongs to this object */
-+ struct xmlrpc_call_info * callInfoP;
-+ /* User's identifier for this RPC */
- };
-
-
--
- static void
--interpretCurlEasyError(const char ** const descriptionP,
-- CURLcode const code) {
--
--#if HAVE_CURL_STRERROR
-- *descriptionP = strdup(curl_easy_strerror(code));
--#else
-- xmlrpc_asprintf(descriptionP, "Curl error code (CURLcode) %d", code);
--#endif
-+lockSyncCurlSession(struct xmlrpc_client_transport * const transportP) {
-+ transportP->syncCurlSessionLockP->acquire(
-+ transportP->syncCurlSessionLockP);
- }
-
-
-
- static void
--interpretCurlMultiError(const char ** const descriptionP,
-- CURLMcode const code) {
--
--#if HAVE_CURL_STRERROR
-- *descriptionP = strdup(curl_multi_strerror(code));
--#else
-- xmlrpc_asprintf(descriptionP, "Curl error code (CURLMcode) %d", code);
--#endif
-+unlockSyncCurlSession(struct xmlrpc_client_transport * const transportP) {
-+ transportP->syncCurlSessionLockP->release(
-+ transportP->syncCurlSessionLockP);
- }
-
-
-
- static void
--addHeader(xmlrpc_env * const envP,
-- struct curl_slist ** const headerListP,
-- const char * const headerText) {
--
-- struct curl_slist * newHeaderList;
-- newHeaderList = curl_slist_append(*headerListP, headerText);
-- if (newHeaderList == NULL)
-- xmlrpc_faultf(envP,
-- "Could not add header '%s'. "
-- "curl_slist_append() failed.", headerText);
-- else
-- *headerListP = newHeaderList;
--}
--
--
-+initWindowsStuff(xmlrpc_env * const envP ATTR_UNUSED) {
-
--static void
--addContentTypeHeader(xmlrpc_env * const envP,
-- struct curl_slist ** const headerListP) {
-+#if defined (WIN32)
-+ /* This is CRITICAL so that cURL-Win32 works properly! */
-
-- addHeader(envP, headerListP, "Content-Type: text/xml");
--}
--
--
--
--static void
--addUserAgentHeader(xmlrpc_env * const envP,
-- struct curl_slist ** const headerListP,
-- const char * const userAgent) {
--
-- if (userAgent) {
-- /* Note: Curl has a CURLOPT_USERAGENT option that does some of this
-- work. We prefer to be totally in control, though, so we build
-- the header explicitly.
-- */
-+ /* So this commenter says, but I wonder why. libcurl should do the
-+ required WSAStartup() itself, and it looks to me like it does.
-+ -Bryan 06.01.01
-+ */
-+ WORD wVersionRequested;
-+ WSADATA wsaData;
-+ int err;
-+ wVersionRequested = MAKEWORD(1, 1);
-
-- curl_version_info_data * const curlInfoP =
-- curl_version_info(CURLVERSION_NOW);
-- char curlVersion[32];
-- const char * userAgentHeader;
--
-- snprintf(curlVersion, sizeof(curlVersion), "%u.%u.%u",
-- (curlInfoP->version_num >> 16) && 0xff,
-- (curlInfoP->version_num >> 8) && 0xff,
-- (curlInfoP->version_num >> 0) && 0xff
-- );
--
-- xmlrpc_asprintf(&userAgentHeader,
-- "User-Agent: %s Xmlrpc-c/%s Curl/%s",
-- userAgent, XMLRPC_C_VERSION, curlVersion);
--
-- if (userAgentHeader == xmlrpc_strsol)
-- xmlrpc_faultf(envP, "Couldn't allocate memory for "
-- "User-Agent header");
-- else {
-- addHeader(envP, headerListP, userAgentHeader);
--
-- xmlrpc_strfree(userAgentHeader);
-+ err = WSAStartup(wVersionRequested, &wsaData);
-+ if (err)
-+ xmlrpc_env_set_fault_formatted(
-+ envP, XMLRPC_INTERNAL_ERROR,
-+ "Winsock startup failed. WSAStartup returned rc %d", err);
-+ else {
-+ if (LOBYTE(wsaData.wVersion) != 1 || HIBYTE(wsaData.wVersion) != 1) {
-+ /* Tell the user that we couldn't find a useable */
-+ /* winsock.dll. */
-+ xmlrpc_env_set_fault_formatted(
-+ envP, XMLRPC_INTERNAL_ERROR, "Winsock reported that "
-+ "it does not implement the requested version 1.1.");
- }
++
++ const char * const xmlrpcPart = xmlrpcUserAgentPart(reportXmlrpc);
++
++ if (xmlrpc_strnomem(xmlrpcPart))
++ xmlrpc_faultf(envP, "Couldn't allocate memory for "
++ "User-Agent header");
++ else {
++ const char * const userPart = userAgent ? userAgent : "";
++ const char * const space = userAgent && reportXmlrpc ? " " : "";
++
++ const char * userAgentHeader;
++
++ xmlrpc_asprintf(&userAgentHeader,
++ "User-Agent: %s%s%s",
++ userPart, space, xmlrpcPart);
++
++ if (xmlrpc_strnomem(userAgentHeader))
++ xmlrpc_faultf(envP, "Couldn't allocate memory for "
++ "User-Agent header");
++ else {
++ addHeader(envP, headerListP, userAgentHeader);
++
++ xmlrpc_strfree(userAgentHeader);
++ }
++ xmlrpc_strfree(xmlrpcPart);
++ }
++ }
++}
++
++
++
++static void
++addAuthorizationHeader(xmlrpc_env * const envP,
++ struct curl_slist ** const headerListP,
++ const char * const hdrValue) {
++
++ const char * authorizationHeader;
++
++ xmlrpc_asprintf(&authorizationHeader, "Authorization: %s", hdrValue);
++
++ if (xmlrpc_strnomem(authorizationHeader))
++ xmlrpc_faultf(envP, "Couldn't allocate memory for "
++ "Authorization header");
++ else {
++ addHeader(envP, headerListP, authorizationHeader);
++
++ xmlrpc_strfree(authorizationHeader);
++ }
++}
++
++
++
++/*
++ In HTTP 1.1, the client can send the header "Expect: 100-continue", which
++ tells the server that the client isn't going to send the body until the
++ server tells it to by sending a "continue" response (HTTP response code 100).
++ The server is obligated to send that response.
++
++ However, many servers are broken and don't send the Continue response.
++
++ Early libcurl did not send the Expect: header, thus worked fine with such
++ broken servers. But as of ca. 2007, libcurl sends the Expect:, and waits
++ for the response, when the body is large. It gives up after 3 seconds and
++ sends the body anyway.
++
++ To accomodate the broken servers and for backward compatibility, we always
++ force libcurl not to send the Expect and consequently not to wait for the
++ response, using the hackish (but according to libcurl design) method of
++ including an entry in our explicit header list that is an Expect: header
++ with an empty argument. This causes libcurl not to send any Expect: header.
++ This is since 1.19; we may find there are also servers and/or libcurl levels
++ that can't work with that.
++
++ We may find a case where the Expect/Continue protocol is desirable. If we
++ do, we should add a transport option to request the function and let libcurl
++ do its thing when the user requests it.
++
++ The purpose of Expect/Continue is to save the client the trouble of
++ generating and/or sending the body when the server is just going to reject
++ the transaction based on the headers -- like maybe because the body is
++ too big.
++*/
++
++
++static void
++addExpectHeader(xmlrpc_env * const envP,
++ struct curl_slist ** const headerListP) {
++
++ addHeader(envP, headerListP, "Expect:");
++ /* Don't send Expect header. See explanation above. */
++}
++
++
++
++static void
++createCurlHeaderList(xmlrpc_env * const envP,
++ const char * const authHdrValue,
++ bool const dontAdvertise,
++ const char * const userAgent,
++ struct curl_slist ** const headerListP) {
++
++ struct curl_slist * headerList;
++
++ headerList = NULL; /* initial value - empty list */
++
++ addContentTypeHeader(envP, &headerList);
++ if (!envP->fault_occurred) {
++ addUserAgentHeader(envP, &headerList, !dontAdvertise, userAgent);
++ if (!envP->fault_occurred) {
++ if (authHdrValue)
++ addAuthorizationHeader(envP, &headerList, authHdrValue);
++ }
++ if (!envP->fault_occurred)
++ addExpectHeader(envP, &headerList);
++ }
++ if (envP->fault_occurred)
++ curl_slist_free_all(headerList);
++
++ *headerListP = headerList;
++}
++
++
++
++static size_t
++collect(void * const ptr,
++ size_t const size,
++ size_t const nmemb,
++ FILE * const stream) {
++/*----------------------------------------------------------------------------
++ This is a Curl output function. Curl calls this to deliver the
++ HTTP response body to the Curl client. Curl thinks it's writing to
++ a POSIX stream.
++-----------------------------------------------------------------------------*/
++ xmlrpc_mem_block * const responseXmlP = (xmlrpc_mem_block *) stream;
++ char * const buffer = ptr;
++ size_t const length = nmemb * size;
++
++ size_t retval;
++ xmlrpc_env env;
++
++ xmlrpc_env_init(&env);
++ xmlrpc_mem_block_append(&env, responseXmlP, buffer, length);
++ if (env.fault_occurred)
++ retval = (size_t)-1;
++ else
++ /* Really? Shouldn't it be like fread() and return 'nmemb'? */
++ retval = length;
++
++ return retval;
++}
++
++
++
++static int
++curlProgress(void * const contextP,
++ double const dltotal,
++ double const dlnow,
++ double const ultotal,
++ double const ulnow) {
++/*----------------------------------------------------------------------------
++ This is a Curl "progress function." It's something various Curl functions
++ call every so often, including whenever something gets interrupted by the
++ process receiving, and catching, a signal. There are two purposes of a
++ Curl progress function: 1) lets us log the progress of a long-running
++ transaction such as a big download, e.g. by displaying a progress bar
++ somewhere. 2) allows us to tell the Curl function, via our return code,
++ that calls it that we don't want to wait anymore for the operation to
++ complete.
++
++ In Curl versions before March 2007, we get called once per second and
++ signals have no effect. In current Curl, we usually get called immediately
++ after a signal gets caught while Curl is waiting to receive a response from
++ the server. But Curl doesn't properly synchronize with signals, so it may
++ miss one and then we don't get called until the next scheduled
++ one-per-second call.
++
++ All we do is pass the call through to the curlTransaction's progress
++ function (the one that the creator of the curlTransaction registered).
++
++ This function is not as important as it once was for interrupting purposes.
++ This module used to use curl_easy_perform(), which can be interrupted only
++ via this progress function. But because of the above-mentioned failure of
++ Curl to properly synchronize signals (and Bryan's failure to get Curl
++ developers to accept code to fix it), we now use the Curl "multi" facility
++ instead and do our own pselect(). But This function still normally gets
++ called by curl_multi_perform(), which the transport tries to call even when
++ the user has requested interruption, because we don't trust our ability to
++ abort a running Curl transaction. curl_multi_perform() reliably winds up a
++ Curl transaction when this function tells it to.
++-----------------------------------------------------------------------------*/
++ curlTransaction * const curlTransactionP = contextP;
++
++ bool abort;
++
++ /* We require anyone setting us up as the Curl progress function to
++ supply a progress function:
++ */
++ assert(curlTransactionP);
++ assert(curlTransactionP->progress);
++
++ curlTransactionP->progress(curlTransactionP->userContextP,
++ dltotal, dlnow, ultotal, ulnow,
++ &abort);
++
++ return abort;
++}
++
++
++
++static void
++setupAuth(xmlrpc_env * const envP ATTR_UNUSED,
++ CURL * const curlSessionP,
++ const xmlrpc_server_info * const serverInfoP,
++ const char ** const authHdrValueP) {
++/*----------------------------------------------------------------------------
++ Set the options in the Curl session 'curlSessionP' to set up the HTTP
++ authentication described by *serverInfoP.
++
++ But we have an odd special function for backward compatibility, because
++ this code dates to a time when libcurl did not have the ability to
++ handle authentication, but we provided such function nonetheless by
++ building our own Authorization: header. But we did this only for
++ HTTP basic authentication.
++
++ So the special function is this: if libcurl is too old to have
++ authorization options and *serverInfoP allows basic authentication,
++ return as *basicAuthHdrParamP an appropriate parameter for the
++ Authorization: Basic: HTTP header. Otherwise, return
++ *basicAuthHdrParamP == NULL.
++-----------------------------------------------------------------------------*/
++ if (serverInfoP->allowedAuth.basic) {
++ CURLcode rc;
++ rc = curl_easy_setopt(curlSessionP, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
++
++ if (rc == CURLE_OK)
++ *authHdrValueP = NULL;
++ else {
++ *authHdrValueP = strdup(serverInfoP->basicAuthHdrValue);
++ if (*authHdrValueP == NULL)
++ xmlrpc_faultf(envP, "Unable to allocate memory for basic "
++ "authentication header");
++ }
++ } else
++ *authHdrValueP = NULL;
++
++ /* We don't worry if libcurl is too old for these other kinds of
++ authentication; they're only defined as _allowed_
++ authentication methods, for when client and server are capable
++ of using it, and unlike with basic authentication, we have no
++ historical commitment to consider an old libcurl as capable of
++ doing these.
++ */
++
++ if (serverInfoP->userNamePw)
++ curl_easy_setopt(curlSessionP, CURLOPT_USERPWD,
++ serverInfoP->userNamePw);
++
++ if (serverInfoP->allowedAuth.digest)
++ curl_easy_setopt(
++ curlSessionP, CURLOPT_HTTPAUTH, CURLAUTH_DIGEST);
++ if (serverInfoP->allowedAuth.gssnegotiate)
++ curl_easy_setopt(
++ curlSessionP, CURLOPT_HTTPAUTH, CURLAUTH_GSSNEGOTIATE);
++ if (serverInfoP->allowedAuth.ntlm)
++ curl_easy_setopt(
++ curlSessionP, CURLOPT_HTTPAUTH, CURLAUTH_NTLM);
++}
++
++
++static void
++setCurlTimeout(CURL * const curlSessionP ATTR_UNUSED,
++ unsigned int const timeout ATTR_UNUSED) {
++
++#if HAVE_CURL_NOSIGNAL
++ unsigned int const timeoutMs = (timeout + 999)/1000;
++
++ curl_easy_setopt(curlSessionP, CURLOPT_NOSIGNAL, 1);
++
++ assert((long)timeoutMs == (int)timeoutMs);
++ /* Calling requirement */
++ curl_easy_setopt(curlSessionP, CURLOPT_TIMEOUT, (long)timeoutMs);
++#else
++ abort();
++#endif
++}
++
++
++
++static void
++assertConstantsMatch(void) {
++/*----------------------------------------------------------------------------
++ There are some constants that we define as part of the Xmlrpc-c
++ interface that are identical to constants in the Curl interface to
++ make curl option setting work. This function asserts such
++ formally.
++-----------------------------------------------------------------------------*/
++ assert(XMLRPC_SSLVERSION_DEFAULT == CURL_SSLVERSION_DEFAULT);
++ assert(XMLRPC_SSLVERSION_TLSv1 == CURL_SSLVERSION_TLSv1 );
++ assert(XMLRPC_SSLVERSION_SSLv2 == CURL_SSLVERSION_SSLv2 );
++ assert(XMLRPC_SSLVERSION_SSLv3 == CURL_SSLVERSION_SSLv3 );
++
++ assert(XMLRPC_HTTPAUTH_BASIC == CURLAUTH_BASIC );
++ assert(XMLRPC_HTTPAUTH_DIGEST == CURLAUTH_DIGEST );
++ assert(XMLRPC_HTTPAUTH_GSSNEGOTIATE == CURLAUTH_GSSNEGOTIATE);
++ assert(XMLRPC_HTTPAUTH_NTLM == CURLAUTH_NTLM );
++
++ assert(XMLRPC_HTTPPROXY_HTTP == CURLPROXY_HTTP );
++ assert(XMLRPC_HTTPPROXY_SOCKS5 == CURLPROXY_SOCKS5 );
++}
++
++
++
++static void
++setupCurlSession(xmlrpc_env * const envP,
++ curlTransaction * const curlTransactionP,
++ xmlrpc_mem_block * const callXmlP,
++ xmlrpc_mem_block * const responseXmlP,
++ const xmlrpc_server_info * const serverInfoP,
++ bool const dontAdvertise,
++ const char * const userAgent,
++ const struct curlSetup * const curlSetupP) {
++/*----------------------------------------------------------------------------
++ Set up the Curl session for the transaction *curlTransactionP so that
++ a subsequent curl_easy_perform() would perform said transaction.
++
++ The data curl_easy_perform() would send for that transaction would
++ be the contents of *callXmlP; the data curl_easy_perform() gets back
++ would go into *responseXmlP.
++
++ *serverInfoP tells what sort of authentication to set up. This is
++ an embarassment, as the xmlrpc_server_info type is part of the
++ Xmlrpc-c interface. Some day, we need to replace this with a type
++ (probably identical) not tied to Xmlrpc-c.
++-----------------------------------------------------------------------------*/
++ CURL * const curlSessionP = curlTransactionP->curlSessionP;
++
++ assertConstantsMatch();
++
++ /* A Curl session is serial -- it processes zero or one transaction
++ at a time. We use the "private" attribute of the Curl session to
++ indicate which transaction it is presently processing. This is
++ important when the transaction finishes, because libcurl will just
++ tell us that something finished on a particular session, not that
++ a particular transaction finished.
++ */
++
++ /* It is out policy to do a libcurl call only where necessary, I.e. not
++ to set what is the default anyhow. The reduction in calls may save
++ some time, but mostly, it will save us encountering rare bugs or
++ suffering from backward incompatibilities in future libcurl. I.e. we
++ don't exercise any more of libcurl than we have to.
++ */
++
++ curl_easy_setopt(curlSessionP, CURLOPT_PRIVATE, curlTransactionP);
++
++ curl_easy_setopt(curlSessionP, CURLOPT_POST, 1);
++ curl_easy_setopt(curlSessionP, CURLOPT_URL, curlTransactionP->serverUrl);
++
++ XMLRPC_MEMBLOCK_APPEND(char, envP, callXmlP, "\0", 1);
++ if (!envP->fault_occurred) {
++ curl_easy_setopt(curlSessionP, CURLOPT_POSTFIELDS,
++ XMLRPC_MEMBLOCK_CONTENTS(char, callXmlP));
++ curl_easy_setopt(curlSessionP, CURLOPT_WRITEFUNCTION, collect);
++ curl_easy_setopt(curlSessionP, CURLOPT_FILE, responseXmlP);
++ curl_easy_setopt(curlSessionP, CURLOPT_HEADER, 0);
++ curl_easy_setopt(curlSessionP, CURLOPT_ERRORBUFFER,
++ curlTransactionP->curlError);
++ if (curlTransactionP->progress) {
++ curl_easy_setopt(curlSessionP, CURLOPT_NOPROGRESS, 0);
++ curl_easy_setopt(curlSessionP, CURLOPT_PROGRESSFUNCTION,
++ curlProgress);
++ curl_easy_setopt(curlSessionP, CURLOPT_PROGRESSDATA,
++ curlTransactionP);
++ } else
++ curl_easy_setopt(curlSessionP, CURLOPT_NOPROGRESS, 1);
++
++ curl_easy_setopt(curlSessionP, CURLOPT_SSL_VERIFYPEER,
++ curlSetupP->sslVerifyPeer);
++ curl_easy_setopt(curlSessionP, CURLOPT_SSL_VERIFYHOST,
++ curlSetupP->sslVerifyHost ? 2 : 0);
++
++ if (curlSetupP->networkInterface)
++ curl_easy_setopt(curlSessionP, CURLOPT_INTERFACE,
++ curlSetupP->networkInterface);
++ if (curlSetupP->sslCert)
++ curl_easy_setopt(curlSessionP, CURLOPT_SSLCERT,
++ curlSetupP->sslCert);
++ if (curlSetupP->sslCertType)
++ curl_easy_setopt(curlSessionP, CURLOPT_SSLCERTTYPE,
++ curlSetupP->sslCertType);
++ if (curlSetupP->sslCertPasswd)
++ curl_easy_setopt(curlSessionP, CURLOPT_SSLCERTPASSWD,
++ curlSetupP->sslCertPasswd);
++ if (curlSetupP->sslKey)
++ curl_easy_setopt(curlSessionP, CURLOPT_SSLKEY,
++ curlSetupP->sslKey);
++ if (curlSetupP->sslKeyType)
++ curl_easy_setopt(curlSessionP, CURLOPT_SSLKEYTYPE,
++ curlSetupP->sslKeyType);
++ if (curlSetupP->sslKeyPasswd)
++ curl_easy_setopt(curlSessionP, CURLOPT_SSLKEYPASSWD,
++ curlSetupP->sslKeyPasswd);
++ if (curlSetupP->sslEngine)
++ curl_easy_setopt(curlSessionP, CURLOPT_SSLENGINE,
++ curlSetupP->sslEngine);
++ if (curlSetupP->sslEngineDefault)
++ /* 3rd argument seems to be required by some Curl */
++ curl_easy_setopt(curlSessionP, CURLOPT_SSLENGINE_DEFAULT, 1l);
++ if (curlSetupP->sslVersion != XMLRPC_SSLVERSION_DEFAULT)
++ curl_easy_setopt(curlSessionP, CURLOPT_SSLVERSION,
++ curlSetupP->sslVersion);
++ if (curlSetupP->caInfo)
++ curl_easy_setopt(curlSessionP, CURLOPT_CAINFO,
++ curlSetupP->caInfo);
++ if (curlSetupP->caPath)
++ curl_easy_setopt(curlSessionP, CURLOPT_CAPATH,
++ curlSetupP->caPath);
++ if (curlSetupP->randomFile)
++ curl_easy_setopt(curlSessionP, CURLOPT_RANDOM_FILE,
++ curlSetupP->randomFile);
++ if (curlSetupP->egdSocket)
++ curl_easy_setopt(curlSessionP, CURLOPT_EGDSOCKET,
++ curlSetupP->egdSocket);
++ if (curlSetupP->sslCipherList)
++ curl_easy_setopt(curlSessionP, CURLOPT_SSL_CIPHER_LIST,
++ curlSetupP->sslCipherList);
++
++ if (curlSetupP->proxy)
++ curl_easy_setopt(curlSessionP, CURLOPT_PROXY, curlSetupP->proxy);
++ if (curlSetupP->proxyAuth != CURLAUTH_BASIC)
++ /* Note that the Xmlrpc-c default and the Curl default are
++ different. Xmlrpc-c is none, while Curl is basic. One reason
++ for this is that it makes our extensible parameter list scheme,
++ wherein zero always means default, easier.
++ */
++ curl_easy_setopt(curlSessionP, CURLOPT_PROXYAUTH,
++ curlSetupP->proxyAuth);
++ if (curlSetupP->proxyPort)
++ curl_easy_setopt(curlSessionP, CURLOPT_PROXYPORT,
++ curlSetupP->proxyPort);
++ if (curlSetupP->proxyUserPwd)
++ curl_easy_setopt(curlSessionP, CURLOPT_PROXYUSERPWD,
++ curlSetupP->proxyUserPwd);
++ if (curlSetupP->proxyType)
++ curl_easy_setopt(curlSessionP, CURLOPT_PROXYTYPE,
++ curlSetupP->proxyType);
++
++ if (curlSetupP->verbose)
++ curl_easy_setopt(curlSessionP, CURLOPT_VERBOSE, 1l);
++
++ if (curlSetupP->timeout)
++ setCurlTimeout(curlSessionP, curlSetupP->timeout);
++
++ {
++ const char * authHdrValue;
++ /* NULL means we don't have to construct an explicit
++ Authorization: header. non-null means we have to
++ construct one with this as its value.
++ */
++
++ setupAuth(envP, curlSessionP, serverInfoP, &authHdrValue);
++ if (!envP->fault_occurred) {
++ struct curl_slist * headerList;
++ createCurlHeaderList(envP, authHdrValue,
++ dontAdvertise, userAgent,
++ &headerList);
++ if (!envP->fault_occurred) {
++ curl_easy_setopt(
++ curlSessionP, CURLOPT_HTTPHEADER, headerList);
++ curlTransactionP->headerList = headerList;
++ }
++ if (authHdrValue)
++ xmlrpc_strfree(authHdrValue);
++ }
++ }
++ }
++}
++
++
++
++void
++curlTransaction_create(xmlrpc_env * const envP,
++ CURL * const curlSessionP,
++ const xmlrpc_server_info * const serverP,
++ xmlrpc_mem_block * const callXmlP,
++ xmlrpc_mem_block * const responseXmlP,
++ bool const dontAdvertise,
++ const char * const userAgent,
++ const struct curlSetup * const curlSetupStuffP,
++ void * const userContextP,
++ curlt_finishFn * const finish,
++ curlt_progressFn * const progress,
++ curlTransaction ** const curlTransactionPP) {
++
++ curlTransaction * curlTransactionP;
++
++ MALLOCVAR(curlTransactionP);
++ if (curlTransactionP == NULL)
++ xmlrpc_faultf(envP, "No memory to create Curl transaction.");
++ else {
++ curlTransactionP->finish = finish;
++ curlTransactionP->curlSessionP = curlSessionP;
++ curlTransactionP->userContextP = userContextP;
++ curlTransactionP->progress = progress;
++
++ curlTransactionP->serverUrl = strdup(serverP->serverUrl);
++ if (curlTransactionP->serverUrl == NULL)
++ xmlrpc_faultf(envP, "Out of memory to store server URL.");
++ else {
++ setupCurlSession(envP, curlTransactionP,
++ callXmlP, responseXmlP,
++ serverP, dontAdvertise, userAgent,
++ curlSetupStuffP);
++
++ if (envP->fault_occurred)
++ xmlrpc_strfree(curlTransactionP->serverUrl);
++ }
+ if (envP->fault_occurred)
-+ WSACleanup();
- }
++ free(curlTransactionP);
++ }
++ *curlTransactionPP = curlTransactionP;
++}
++
++
++
++void
++curlTransaction_destroy(curlTransaction * const curlTransactionP) {
++
++ curl_slist_free_all(curlTransactionP->headerList);
++ xmlrpc_strfree(curlTransactionP->serverUrl);
++
++ free(curlTransactionP);
++}
++
++
++
++static void
++interpretCurlEasyError(const char ** const descriptionP,
++ CURLcode const code) {
++
++#if HAVE_CURL_STRERROR
++ *descriptionP = strdup(curl_easy_strerror(code));
++#else
++ xmlrpc_asprintf(descriptionP, "Curl error code (CURLcode) %d", code);
+#endif
- }
-
-
-
- static void
--addAuthorizationHeader(xmlrpc_env * const envP,
-- struct curl_slist ** const headerListP,
-- const char * const hdrValue) {
-+termWindowsStuff(void) {
-
-- const char * authorizationHeader;
--
-- xmlrpc_asprintf(&authorizationHeader, "Authorization: %s", hdrValue);
--
-- if (authorizationHeader == xmlrpc_strsol)
-- xmlrpc_faultf(envP, "Couldn't allocate memory for "
-- "Authorization header");
-- else {
-- addHeader(envP, headerListP, authorizationHeader);
--
-- xmlrpc_strfree(authorizationHeader);
-- }
-+#if defined (WIN32)
-+ WSACleanup();
++}
++
++
++
++void
++curlTransaction_getError(curlTransaction * const curlTransactionP,
++ xmlrpc_env * const envP) {
++
++ if (curlTransactionP->result != CURLE_OK) {
++ /* We've seen Curl just return a null string for an explanation
++ (e.g. when TCP connect() fails because IP address doesn't exist).
++ */
++ const char * explanation;
++
++ if (strlen(curlTransactionP->curlError) == 0)
++ interpretCurlEasyError(&explanation, curlTransactionP->result);
++ else
++ xmlrpc_asprintf(&explanation, "%s", curlTransactionP->curlError);
++
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_NETWORK_ERROR, "libcurl failed to execute the "
++ "HTTP POST transaction, explaining: %s", explanation);
++
++ xmlrpc_strfree(explanation);
++ } else {
++ CURLcode res;
++ long http_result;
++
++ res = curl_easy_getinfo(curlTransactionP->curlSessionP,
++ CURLINFO_HTTP_CODE, &http_result);
++
++ if (res != CURLE_OK)
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_INTERNAL_ERROR,
++ "Curl performed the HTTP POST request, but was "
++ "unable to say what the HTTP result code was. "
++ "curl_easy_getinfo(CURLINFO_HTTP_CODE) says: %s",
++ curlTransactionP->curlError);
++ else {
++ if (http_result != 200)
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_NETWORK_ERROR,
++ "HTTP response code is %ld, not 200",
++ http_result);
++ }
++ }
++}
++
++
++
++void
++curlTransaction_finish(xmlrpc_env * const envP,
++ curlTransaction * const curlTransactionP,
++ CURLcode const result) {
++
++ curlTransactionP->result = result;
++
++ if (curlTransactionP->finish)
++ curlTransactionP->finish(envP, curlTransactionP->userContextP);
++}
++
++
++
++CURL *
++curlTransaction_curlSession(curlTransaction * const curlTransactionP) {
++
++ return curlTransactionP->curlSessionP;
++
++}
+diff --git a/libs/xmlrpc-c/lib/curl_transport/curltransaction.h b/libs/xmlrpc-c/lib/curl_transport/curltransaction.h
+new file mode 100644
+index 0000000..4edc365
+--- /dev/null
++++ b/libs/xmlrpc-c/lib/curl_transport/curltransaction.h
+@@ -0,0 +1,120 @@
++#ifndef CURLTRANSACTION_H_INCLUDED
++#define CURLTRANSACTION_H_INCLUDED
++
++#include "bool.h"
++#include "xmlrpc-c/util.h"
++#include "xmlrpc-c/client.h"
++#include <curl/curl.h>
++
++typedef struct curlTransaction curlTransaction;
++
++typedef void curlt_finishFn(xmlrpc_env * const, void * const);
++typedef void curlt_progressFn(
++ void * const, double const, double const, double const, double const,
++ bool * const);
++
++struct curlSetup {
++
++ /* This is all client transport properties that are implemented as
++ simple Curl session properties (i.e. the transport basically just
++ passes them through to Curl without looking at them).
++
++ People occasionally want to replace all this with something where
++ the Xmlrpc-c user simply does the curl_easy_setopt() call and this
++ code need not know about all these options. Unfortunately, that's
++ a significant modularity violation. Either the Xmlrpc-c user
++ controls the Curl object or he doesn't. If he does, then he
++ shouldn't use libxmlrpc_client -- he should just copy some of this
++ code into his own program. If he doesn't, then he should never see
++ the Curl library.
++
++ Speaking of modularity: the only reason this is a separate struct
++ is to make the code easier to manage. Ideally, the fact that these
++ particular properties of the transport are implemented by simple
++ Curl session setup would be known only at the lowest level code
++ that does that setup.
++ */
++
++ const char * networkInterface;
++ /* This identifies the network interface on the local side to
++ use for the session. It is an ASCIIZ string in the form
++ that the Curl recognizes for setting its CURLOPT_INTERFACE
++ option (also the --interface option of the Curl program).
++ E.g. "9.1.72.189" or "giraffe-data.com" or "eth0".
++
++ It isn't necessarily valid, but it does have a terminating NUL.
++
++ NULL means we have no preference.
++ */
++ bool sslVerifyPeer;
++ /* In an SSL connection, we should authenticate the server's SSL
++ certificate -- refuse to talk to him if it isn't authentic.
++ This is equivalent to Curl's CURLOPT_SSL_VERIFY_PEER option.
++ */
++ bool sslVerifyHost;
++ /* In an SSL connection, we should verify that the server's
++ certificate (independently of whether the certificate is
++ authentic) indicates the host name that is in the URL we
++ are using for the server.
++ */
++
++ const char * sslCert;
++ const char * sslCertType;
++ const char * sslCertPasswd;
++ const char * sslKey;
++ const char * sslKeyType;
++ const char * sslKeyPasswd;
++ const char * sslEngine;
++ bool sslEngineDefault;
++ unsigned int sslVersion;
++ const char * caInfo;
++ const char * caPath;
++ const char * randomFile;
++ const char * egdSocket;
++ const char * sslCipherList;
++
++ const char * proxy;
++ unsigned int proxyPort;
++ unsigned int proxyAuth;
++ /* e.g. CURLAUTH_BASIC, CURLAUTH_NTLM, ... */
++ const char * proxyUserPwd;
++ unsigned int proxyType;
++ /* see enum curl_proxytype: CURLPROXY_HTTP, CURLPROXY_SOCKS4, ... */
++
++ unsigned int timeout;
++ /* 0 = no Curl timeout. This is in milliseconds. */
++
++ bool verbose;
++};
++
++
++void
++curlTransaction_create(xmlrpc_env * const envP,
++ CURL * const curlSessionP,
++ const xmlrpc_server_info * const serverP,
++ xmlrpc_mem_block * const callXmlP,
++ xmlrpc_mem_block * const responseXmlP,
++ bool const dontAdvertise,
++ const char * const userAgent,
++ const struct curlSetup * const curlSetupStuffP,
++ void * const userContextP,
++ curlt_finishFn * const finish,
++ curlt_progressFn * const progress,
++ curlTransaction ** const curlTransactionPP);
++
++void
++curlTransaction_destroy(curlTransaction * const curlTransactionP);
++
++void
++curlTransaction_finish(xmlrpc_env * const envP,
++ curlTransaction * const curlTransactionP,
++ CURLcode const result);
++
++void
++curlTransaction_getError(curlTransaction * const curlTransactionP,
++ xmlrpc_env * const envP);
++
++CURL *
++curlTransaction_curlSession(curlTransaction * const curlTransactionP);
++
+#endif
- }
-
-
-
--static void
--createCurlHeaderList(xmlrpc_env * const envP,
-- const char * const authHdrValue,
-- const char * const userAgent,
-- struct curl_slist ** const headerListP) {
-+static bool
-+curlHasNosignal(void) {
-
-- struct curl_slist * headerList;
-+ bool retval;
-
-- headerList = NULL; /* initial value - empty list */
-+#if HAVE_CURL_NOSIGNAL
-+ curl_version_info_data * const curlInfoP =
-+ curl_version_info(CURLVERSION_NOW);
-
-- addContentTypeHeader(envP, &headerList);
-- if (!envP->fault_occurred) {
-- addUserAgentHeader(envP, &headerList, userAgent);
-- if (!envP->fault_occurred) {
-- if (authHdrValue)
-- addAuthorizationHeader(envP, &headerList, authHdrValue);
-- }
-- }
-- if (envP->fault_occurred)
-- curl_slist_free_all(headerList);
-- else
-- *headerListP = headerList;
-+ retval = (curlInfoP->version_num >= 0x070A00); /* 7.10.0 */
+diff --git a/libs/xmlrpc-c/lib/curl_transport/curlversion.h b/libs/xmlrpc-c/lib/curl_transport/curlversion.h
+new file mode 100644
+index 0000000..71c5a68
+--- /dev/null
++++ b/libs/xmlrpc-c/lib/curl_transport/curlversion.h
+@@ -0,0 +1,20 @@
++#ifndef CURLVERSION_H_INCLUDED
++#define CURLVERSION_H_INCLUDED
++
++#define CMAJOR LIBCURL_VERSION_MAJOR
++#define CMINOR LIBCURL_VERSION_MINOR
++#if CMAJOR > 7 || (CMAJOR == 7 && CMINOR >= 10)
++ #define HAVE_CURL_NOSIGNAL 1
+#else
-+ retval = false;
++ #define HAVE_CURL_NOSIGNAL 0
+#endif
-+ return retval;
- }
++#if CMAJOR > 7 || (CMAJOR == 7 && CMINOR >= 12)
++ #define HAVE_CURL_STRERROR 1
++#else
++ #define HAVE_CURL_STRERROR 0
++#endif
++
++#undef CMAJOR
++#undef CMINOR
++
++#endif
+diff --git a/libs/xmlrpc-c/lib/curl_transport/lock.h b/libs/xmlrpc-c/lib/curl_transport/lock.h
+new file mode 100644
+index 0000000..bb7ce42
+--- /dev/null
++++ b/libs/xmlrpc-c/lib/curl_transport/lock.h
+@@ -0,0 +1,24 @@
++#ifndef CURL_LOCK_H_INCLUDED
++#define CURL_LOCK_H_INCLUDED
++
++#include <pthread.h>
++
++typedef struct lock lock;
++
++typedef void lockAcquireFn(lock *);
++typedef void lockReleaseFn(lock *);
++typedef void lockDestroyFn(lock *);
++
++struct lock {
++ /* To finish the job of making an abstract lock class that can use locks
++ other than pthread mutexes, we need to replace 'theLock' with a
++ "void * implementationP" and make curlLock_create_pthread() malloc
++ the mutex.
++ */
++ pthread_mutex_t theLock;
++ lockAcquireFn * acquire;
++ lockReleaseFn * release;
++ lockDestroyFn * destroy;
++};
++
++#endif
+diff --git a/libs/xmlrpc-c/lib/curl_transport/lock_pthread.c b/libs/xmlrpc-c/lib/curl_transport/lock_pthread.c
+new file mode 100644
+index 0000000..24b029e
+--- /dev/null
++++ b/libs/xmlrpc-c/lib/curl_transport/lock_pthread.c
+@@ -0,0 +1,49 @@
++#include <stdlib.h>
++
++#include "mallocvar.h"
++#include "pthreadx.h"
++
++#include "lock.h"
++
++#include "lock_pthread.h"
++
++static lockAcquireFn acquire;
++
++static void
++acquire(struct lock * const lockP) {
++ pthread_mutex_lock(&lockP->theLock);
++}
++
++
++
++static lockReleaseFn release;
++
++static void
++release(struct lock * const lockP) {
++ pthread_mutex_unlock(&lockP->theLock);
++}
++
++
++
++static lockDestroyFn destroy;
++
++static void
++destroy(struct lock * const lockP) {
++ pthread_mutex_destroy(&lockP->theLock);
++ free(lockP);
++}
++
++
++
++struct lock *
++curlLock_create_pthread(void) {
++ struct lock * lockP;
++ MALLOCVAR(lockP);
++ if (lockP) {
++ pthread_mutex_init(&lockP->theLock, NULL);
++ lockP->acquire = &acquire;
++ lockP->release = &release;
++ lockP->destroy = &destroy;
++ }
++ return lockP;
++}
+diff --git a/libs/xmlrpc-c/lib/curl_transport/lock_pthread.h b/libs/xmlrpc-c/lib/curl_transport/lock_pthread.h
+new file mode 100644
+index 0000000..49ffa51
+--- /dev/null
++++ b/libs/xmlrpc-c/lib/curl_transport/lock_pthread.h
+@@ -0,0 +1,9 @@
++#ifndef CURL_LOCK_PTHREAD_H_INCLUDED
++#define CURL_LOCK_PTHREAD_H_INCLUDED
++
++#include "lock.h"
++
++lock *
++curlLock_create_pthread(void);
++
++#endif
+diff --git a/libs/xmlrpc-c/lib/curl_transport/xmlrpc_curl_transport.c b/libs/xmlrpc-c/lib/curl_transport/xmlrpc_curl_transport.c
+index 29104b9..fe705b9 100644
+--- a/libs/xmlrpc-c/lib/curl_transport/xmlrpc_curl_transport.c
++++ b/libs/xmlrpc-c/lib/curl_transport/xmlrpc_curl_transport.c
+@@ -52,6 +52,8 @@
+ such subordinate libraries as OpenSSL and Winsock.
+ -----------------------------------------------------------------------------*/
++#define _XOPEN_SOURCE 600 /* Make sure strdup() is in <string.h> */
++
+ #include "xmlrpc_config.h"
+ #include <string.h>
+@@ -59,7 +61,7 @@
+ #include <errno.h>
+ #include <assert.h>
+ #include <limits.h>
+-#if !MSVCRT
++#if HAVE_SYS_SELECT_H
+ #include <sys/select.h>
+ #endif
+ #include <signal.h>
+@@ -75,18 +77,24 @@
+ #include "girstring.h"
+ #include "pthreadx.h"
--static void
--assertConstantsMatch(void) {
-+static xmlrpc_timespec
-+pselectTimeout(xmlrpc_timeoutType const timeoutType,
-+ xmlrpc_timespec const timeoutDt) {
- /*----------------------------------------------------------------------------
-- There are some constants that we define as part of the Xmlrpc-c
-- interface that are identical to constants in the Curl interface to
-- make curl option setting work. This function asserts such
-- formally.
-+ Return the value that should be used in the select() call to wait for
-+ there to be work for the Curl multi manager to do, given that the user
-+ wants to timeout according to 'timeoutType' and 'timeoutDt'.
- -----------------------------------------------------------------------------*/
-- assert(XMLRPC_SSLVERSION_DEFAULT == CURL_SSLVERSION_DEFAULT);
-- assert(XMLRPC_SSLVERSION_TLSv1 == CURL_SSLVERSION_TLSv1);
-- assert(XMLRPC_SSLVERSION_SSLv2 == CURL_SSLVERSION_SSLv2);
-- assert(XMLRPC_SSLVERSION_SSLv3 == CURL_SSLVERSION_SSLv3);
--}
--
-+ unsigned int const million = 1000000;
-+ unsigned int selectTimeoutMillisec;
-+ xmlrpc_timespec retval;
++#include "xmlrpc-c/util.h"
+ #include "xmlrpc-c/string_int.h"
+ #include "xmlrpc-c/select_int.h"
+ #include "xmlrpc-c/client_int.h"
+ #include "xmlrpc-c/transport.h"
+ #include "xmlrpc-c/time_int.h"
+-#include "version.h"
-+ /* We assume there is work to do at least every 3 seconds, because
-+ the Curl multi manager often has retries and other scheduled work
-+ that doesn't involve file handles on which we can select().
-+ */
-+ switch (timeoutType) {
-+ case timeout_no:
-+ selectTimeoutMillisec = 3000;
-+ break;
-+ case timeout_yes: {
-+ xmlrpc_timespec nowTime;
-+ int timeLeft;
+ #include <curl/curl.h>
+ #include <curl/types.h>
+ #include <curl/easy.h>
+ #include <curl/multi.h>
--static size_t
--collect(void * const ptr,
-- size_t const size,
-- size_t const nmemb,
-- FILE * const stream) {
--/*----------------------------------------------------------------------------
-- This is a Curl output function. Curl calls this to deliver the
-- HTTP response body to the Curl client. Curl thinks it's writing to
-- a POSIX stream.
-------------------------------------------------------------------------------*/
-- xmlrpc_mem_block * const responseXmlP = (xmlrpc_mem_block *) stream;
-- char * const buffer = ptr;
-- size_t const length = nmemb * size;
-+ xmlrpc_gettimeofday(&nowTime);
-+ timeLeft = timeDiffMillisec(timeoutDt, nowTime);
++#include "lock.h"
++#include "lock_pthread.h"
++#include "curltransaction.h"
++#include "curlmulti.h"
++#include "curlversion.h"
++
+ #if MSVCRT
+ #if defined(_DEBUG)
+ # include <crtdbg.h>
+@@ -98,92 +106,8 @@
+ #endif
-- size_t retval;
-- xmlrpc_env env;
-+ selectTimeoutMillisec = MIN(3000, MAX(0, timeLeft));
-+ } break;
-+ }
-+ retval.tv_sec = selectTimeoutMillisec / 1000;
-+ retval.tv_nsec = (uint32_t)((selectTimeoutMillisec % 1000) * million);
-- xmlrpc_env_init(&env);
-- xmlrpc_mem_block_append(&env, responseXmlP, buffer, length);
-- if (env.fault_occurred)
-- retval = (size_t)-1;
-- else
-- /* Really? Shouldn't it be like fread() and return 'nmemb'? */
-- retval = length;
--
- return retval;
--}
+-#define CMAJOR LIBCURL_VERSION_MAJOR
+-#define CMINOR LIBCURL_VERSION_MINOR
+-#if CMAJOR > 7 || (CMAJOR == 7 && CMINOR >= 10)
+- #define HAVE_CURL_NOSIGNAL 1
+-#else
+- #define HAVE_CURL_NOSIGNAL 0
+-#endif
+-#if CMAJOR > 7 || (CMAJOR == 7 && CMINOR >= 12)
+- #define HAVE_CURL_STRERROR 1
+-#else
+- #define HAVE_CURL_STRERROR 0
+-#endif
-
+-#undef CMAJOR
+-#undef CMINOR
-
-
--static int
--curlProgress(void * const contextP,
-- double const dltotal ATTR_UNUSED,
-- double const dlnow ATTR_UNUSED,
-- double const ultotal ATTR_UNUSED,
-- double const ulnow ATTR_UNUSED) {
--/*----------------------------------------------------------------------------
-- This is a Curl "progress function." It's something various Curl
-- functions call every so often, including whenever something gets
-- interrupted by the process receiving, and catching, a signal.
-- There are two purposes of a Curl progress function: 1) lets us log
-- the progress of a long-running transaction such as a big download,
-- e.g. by displaying a progress bar somewhere. In Xmlrpc-c, we don't
-- implement this purpose. 2) allows us to tell the Curl function,
-- via our return code, that calls it that we don't want to wait
-- anymore for the operation to complete.
-
-- In Curl versions before March 2007, we get called once per second
-- and signals have no effect. In current Curl, we usually get called
-- immediately after a signal gets caught while Curl is waiting to
-- receive a response from the server. But Curl doesn't properly
-- synchronize with signals, so it may miss one and then we don't get
-- called until the next scheduled one-per-second call.
+ typedef struct rpc rpc;
+
+-typedef struct curlTransaction curlTransaction;
-
-- All we do is tell Caller it's time to give up if the transport's
-- client says it is via his "interrupt" flag.
-
-- This function is not as important as it once was. This module used
-- to use curl_easy_perform(), which can be interrupted only via this
-- progress function. But because of the above-mentioned failure of
-- Curl to properly synchronize signals (and Bryan's failure to get
-- Curl developers to accept code to fix it), we now use the Curl
-- "multi" facility instead and do our own pselect(). But
-- This function still normally gets called by curl_multi_perform(),
-- which the transport tries to call even when the user has requested
-- interruption, because we don't trust our ability to abort a running
-- Curl transaction. curl_multi_perform() reliably winds up a Curl
-- transaction when this function tells it to.
-------------------------------------------------------------------------------*/
-- unsigned int * const interruptP = contextP;
-
-- /* We require anyone setting us up as the Curl progress function to
-- supply an interrupt flag:
-- */
-- assert(contextP);
+-struct curlSetup {
-
-- return *interruptP != 0 ? 1 : 0;
--}
-+}
-
-
-
- static void
--setupAuth(xmlrpc_env * const envP ATTR_UNUSED,
-- CURL * const curlSessionP,
-- const xmlrpc_server_info * const serverInfoP,
-- const char ** const authHdrValueP) {
--/*----------------------------------------------------------------------------
-- Set the options in the Curl session 'curlSessionP' to set up the HTTP
-- authentication described by *serverInfoP.
--
-- But we have an odd special function for backward compatibility, because
-- this code dates to a time when libcurl did not have the ability to
-- handle authentication, but we provided such function nonetheless by
-- building our own Authorization: header. But we did this only for
-- HTTP basic authentication.
+- /* This is all client transport properties that are implemented as
+- simple Curl session properties (i.e. the transport basically just
+- passes them through to Curl without looking at them).
-
-- So the special function is this: if libcurl is too old to have
-- authorization options and *serverInfoP allows basic authentication,
-- return as *basicAuthHdrParamP an appropriate parameter for the
-- Authorization: Basic: HTTP header. Otherwise, return
-- *basicAuthHdrParamP == NULL.
-------------------------------------------------------------------------------*/
-- if (serverInfoP->allowedAuth.basic) {
-- CURLcode rc;
-- rc = curl_easy_setopt(curlSessionP, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
-+processCurlMessages(xmlrpc_env * const envP,
-+ curlMulti * const curlMultiP) {
-+
-+ bool endOfMessages;
-
-- if (rc == CURLE_OK)
-- *authHdrValueP = NULL;
-- else {
-- *authHdrValueP = strdup(serverInfoP->basicAuthHdrValue);
-- if (*authHdrValueP == NULL)
-- xmlrpc_faultf(envP, "Unable to allocate memory for basic "
-- "authentication header");
-- }
-- } else
-- *authHdrValueP = NULL;
+- People occasionally want to replace all this with something where
+- the Xmlrpc-c user simply does the curl_easy_setopt() call and this
+- code need not know about all these options. Unfortunately, that's
+- a significant modularity violation. Either the Xmlrpc-c user
+- controls the Curl object or he doesn't. If he does, then he
+- shouldn't use libxmlrpc_client -- he should just copy some of this
+- code into his own program. If he doesn't, then he should never see
+- the Curl library.
-
-- /* We don't worry if libcurl is too old for these other kinds of
-- authentication; they're only defined as _allowed_
-- authentication methods, for when client and server are capable
-- of using it, and unlike with basic authentication, we have no
-- historical commitment to consider an old libcurl as capable of
-- doing these.
+- Speaking of modularity: the only reason this is a separate struct
+- is to make the code easier to manage. Ideally, the fact that these
+- particular properties of the transport are implemented by simple
+- Curl session setup would be known only at the lowest level code
+- that does that setup.
- */
--
-- if (serverInfoP->userNamePw)
-- curl_easy_setopt(curlSessionP, CURLOPT_USERPWD,
-- serverInfoP->userNamePw);
-
-- if (serverInfoP->allowedAuth.digest)
-- curl_easy_setopt(
-- curlSessionP, CURLOPT_HTTPAUTH, CURLAUTH_DIGEST);
-- if (serverInfoP->allowedAuth.gssnegotiate)
-- curl_easy_setopt(
-- curlSessionP, CURLOPT_HTTPAUTH, CURLAUTH_GSSNEGOTIATE);
-- if (serverInfoP->allowedAuth.ntlm)
-- curl_easy_setopt(
-- curlSessionP, CURLOPT_HTTPAUTH, CURLAUTH_NTLM);
--}
-+ endOfMessages = false; /* initial assumption */
+- const char * networkInterface;
+- /* This identifies the network interface on the local side to
+- use for the session. It is an ASCIIZ string in the form
+- that the Curl recognizes for setting its CURLOPT_INTERFACE
+- option (also the --interface option of the Curl program).
+- E.g. "9.1.72.189" or "giraffe-data.com" or "eth0".
+-
+- It isn't necessarily valid, but it does have a terminating NUL.
+-
+- NULL means we have no preference.
+- */
+- xmlrpc_bool sslVerifyPeer;
+- /* In an SSL connection, we should authenticate the server's SSL
+- certificate -- refuse to talk to him if it isn't authentic.
+- This is equivalent to Curl's CURLOPT_SSL_VERIFY_PEER option.
+- */
+- xmlrpc_bool sslVerifyHost;
+- /* In an SSL connection, we should verify that the server's
+- certificate (independently of whether the certificate is
+- authentic) indicates the host name that is in the URL we
+- are using for the server.
+- */
+-
+- const char * sslCert;
+- const char * sslCertType;
+- const char * sslCertPasswd;
+- const char * sslKey;
+- const char * sslKeyType;
+- const char * sslKeyPasswd;
+- const char * sslEngine;
+- bool sslEngineDefault;
+- unsigned int sslVersion;
+- const char * caInfo;
+- const char * caPath;
+- const char * randomFile;
+- const char * egdSocket;
+- const char * sslCipherList;
+- unsigned int timeout;
+- /* 0 = no Curl timeout. This is in milliseconds. */
+-};
-+ while (!endOfMessages && !envP->fault_occurred) {
-+ CURLMsg curlMsg;
--static void
--setCurlTimeout(CURL * const curlSessionP ATTR_UNUSED,
-- unsigned int const timeout ATTR_UNUSED) {
-+ curlMulti_getMessage(curlMultiP, &endOfMessages, &curlMsg);
+ static int
+@@ -239,939 +163,248 @@ addMilliseconds(xmlrpc_timespec const addend,
--#if HAVE_CURL_NOSIGNAL
-- unsigned int const timeoutMs = (timeout + 999)/1000;
-+ if (!endOfMessages) {
-+ if (curlMsg.msg == CURLMSG_DONE) {
-+ curlTransaction * curlTransactionP;
-- curl_easy_setopt(curlSessionP, CURLOPT_NOSIGNAL, 1);
-+ curl_easy_getinfo(curlMsg.easy_handle, CURLINFO_PRIVATE,
-+ (void *)&curlTransactionP);
-- assert((long)timeoutMs == (int)timeoutMs);
-- /* Calling requirement */
-- curl_easy_setopt(curlSessionP, CURLOPT_TIMEOUT, (long)timeoutMs);
--#else
-- abort();
--#endif
--}
--
+-/*============================================================================
+- locks
+-==============================================================================
+- This is the beginnings of a lock abstraction that will allow this
+- transport to be used with locks other than pthread locks
+-============================================================================*/
-
+-struct lock {
+- pthread_mutex_t theLock;
+- void (*lock)(struct lock *);
+- void (*unlock)(struct lock *);
+- void (*destroy)(struct lock *);
+-};
-
+-typedef struct lock lock;
++struct xmlrpc_client_transport {
++ CURL * syncCurlSessionP;
++ /* Handle for a Curl library session object that we use for
++ all synchronous RPCs. An async RPC has one of its own,
++ and consequently does not share things such as persistent
++ connections and cookies with any other RPC.
++ */
++ lock * syncCurlSessionLockP;
++ /* Hold this lock while accessing or using *syncCurlSessionP.
++ You're using the session from the time you set any
++ attributes in it or start a transaction with it until any
++ transaction has finished and you've lost interest in any
++ attributes of the session.
++ */
++ curlMulti * syncCurlMultiP;
++ /* The Curl multi manager that this transport uses to execute
++ Curl transactions for RPCs requested via the synchronous
++ interface. The fact that there is never more than one such
++ transaction going at a time might make you wonder why a
++ "multi" manager is needed. The reason is that it is the only
++ interface in libcurl that gives us the flexibility to execute
++ the transaction with proper interruptibility. The only Curl
++ transaction ever attached to this multi manager is
++ 'syncCurlSessionP'.
++
++ This is constant (the handle, not the object).
++ */
++ curlMulti * asyncCurlMultiP;
++ /* The Curl multi manager that this transport uses to execute
++ Curl transactions for RPCs requested via the asynchronous
++ interface. Note that there may be multiple such Curl transactions
++ simultaneously and one can't wait for a particular one to finish;
++ the collection of asynchronous RPCs are an indivisible mass.
++
++ This is constant (the handle, not the object).
++ */
++ bool dontAdvertise;
++ /* Don't identify to the server the XML-RPC engine we are using. If
++ false, include a User-Agent HTTP header in all requests that
++ identifies the Xmlrpc-c and Curl libraries.
+
-static void
--setupCurlSession(xmlrpc_env * const envP,
-- curlTransaction * const curlTransactionP,
-- xmlrpc_mem_block * const callXmlP,
-- xmlrpc_mem_block * const responseXmlP,
-- const xmlrpc_server_info * const serverInfoP,
-- const char * const userAgent,
-- int * const interruptP,
-- const struct curlSetup * const curlSetupP) {
--/*----------------------------------------------------------------------------
-- Set up the Curl session for the transaction *curlTransactionP so that
-- a subsequent curl_easy_perform() would perform said transaction.
--
-- The data curl_easy_perform() would send for that transaction would
-- be the contents of *callXmlP; the data curl_easy_perform() gets back
-- would go into *responseXmlP.
--
-- 'interruptP' is a pointer to an interrupt flag -- a flag that becomes
-- nonzero when the user wants to abandon this Curl session. NULL means
-- there is no interrupt flag; user will never want to abandon the session.
-------------------------------------------------------------------------------*/
-- CURL * const curlSessionP = curlTransactionP->curlSessionP;
--
-- assertConstantsMatch();
--
-- curl_easy_setopt(curlSessionP, CURLOPT_POST, 1);
-- curl_easy_setopt(curlSessionP, CURLOPT_URL, curlTransactionP->serverUrl);
--
-- XMLRPC_MEMBLOCK_APPEND(char, envP, callXmlP, "\0", 1);
-- if (!envP->fault_occurred) {
-- curl_easy_setopt(curlSessionP, CURLOPT_POSTFIELDS,
-- XMLRPC_MEMBLOCK_CONTENTS(char, callXmlP));
-- curl_easy_setopt(curlSessionP, CURLOPT_WRITEFUNCTION, collect);
-- curl_easy_setopt(curlSessionP, CURLOPT_FILE, responseXmlP);
-- curl_easy_setopt(curlSessionP, CURLOPT_HEADER, 0);
-- curl_easy_setopt(curlSessionP, CURLOPT_ERRORBUFFER,
-- curlTransactionP->curlError);
-- if (interruptP) {
-- curl_easy_setopt(curlSessionP, CURLOPT_NOPROGRESS, 0);
-- curl_easy_setopt(curlSessionP, CURLOPT_PROGRESSFUNCTION,
-- curlProgress);
-- curl_easy_setopt(curlSessionP, CURLOPT_PROGRESSDATA, interruptP);
-- } else
-- curl_easy_setopt(curlSessionP, CURLOPT_NOPROGRESS, 1);
--
-- curl_easy_setopt(curlSessionP, CURLOPT_SSL_VERIFYPEER,
-- curlSetupP->sslVerifyPeer);
-- curl_easy_setopt(curlSessionP, CURLOPT_SSL_VERIFYHOST,
-- curlSetupP->sslVerifyHost ? 2 : 0);
--
-- if (curlSetupP->networkInterface)
-- curl_easy_setopt(curlSessionP, CURLOPT_INTERFACE,
-- curlSetupP->networkInterface);
-- if (curlSetupP->sslCert)
-- curl_easy_setopt(curlSessionP, CURLOPT_SSLCERT,
-- curlSetupP->sslCert);
-- if (curlSetupP->sslCertType)
-- curl_easy_setopt(curlSessionP, CURLOPT_SSLCERTTYPE,
-- curlSetupP->sslCertType);
-- if (curlSetupP->sslCertPasswd)
-- curl_easy_setopt(curlSessionP, CURLOPT_SSLCERTPASSWD,
-- curlSetupP->sslCertPasswd);
-- if (curlSetupP->sslKey)
-- curl_easy_setopt(curlSessionP, CURLOPT_SSLKEY,
-- curlSetupP->sslKey);
-- if (curlSetupP->sslKeyType)
-- curl_easy_setopt(curlSessionP, CURLOPT_SSLKEYTYPE,
-- curlSetupP->sslKeyType);
-- if (curlSetupP->sslKeyPasswd)
-- curl_easy_setopt(curlSessionP, CURLOPT_SSLKEYPASSWD,
-- curlSetupP->sslKeyPasswd);
-- if (curlSetupP->sslEngine)
-- curl_easy_setopt(curlSessionP, CURLOPT_SSLENGINE,
-- curlSetupP->sslEngine);
-- if (curlSetupP->sslEngineDefault)
-- /* 3rd argument seems to be required by some Curl */
-- curl_easy_setopt(curlSessionP, CURLOPT_SSLENGINE_DEFAULT, 1l);
-- if (curlSetupP->sslVersion != XMLRPC_SSLVERSION_DEFAULT)
-- curl_easy_setopt(curlSessionP, CURLOPT_SSLVERSION,
-- curlSetupP->sslVersion);
-- if (curlSetupP->caInfo)
-- curl_easy_setopt(curlSessionP, CURLOPT_CAINFO,
-- curlSetupP->caInfo);
-- if (curlSetupP->caPath)
-- curl_easy_setopt(curlSessionP, CURLOPT_CAPATH,
-- curlSetupP->caPath);
-- if (curlSetupP->randomFile)
-- curl_easy_setopt(curlSessionP, CURLOPT_RANDOM_FILE,
-- curlSetupP->randomFile);
-- if (curlSetupP->egdSocket)
-- curl_easy_setopt(curlSessionP, CURLOPT_EGDSOCKET,
-- curlSetupP->egdSocket);
-- if (curlSetupP->sslCipherList)
-- curl_easy_setopt(curlSessionP, CURLOPT_SSL_CIPHER_LIST,
-- curlSetupP->sslCipherList);
--
-- if (curlSetupP->timeout)
-- setCurlTimeout(curlSessionP, curlSetupP->timeout);
--
-- {
-- const char * authHdrValue;
-- /* NULL means we don't have to construct an explicit
-- Authorization: header. non-null means we have to
-- construct one with this as its value.
-- */
--
-- setupAuth(envP, curlSessionP, serverInfoP, &authHdrValue);
-- if (!envP->fault_occurred) {
-- struct curl_slist * headerList;
-- createCurlHeaderList(envP, authHdrValue, userAgent,
-- &headerList);
-- if (!envP->fault_occurred) {
-- curl_easy_setopt(
-- curlSessionP, CURLOPT_HTTPHEADER, headerList);
-- curlTransactionP->headerList = headerList;
-- }
-- if (authHdrValue)
-- xmlrpc_strfree(authHdrValue);
-- }
-- }
+-lock_pthread(struct lock * const lockP) {
+- pthread_mutex_lock(&lockP->theLock);
+-}
++ See also 'userAgent'.
+
+-static void
+-unlock_pthread(struct lock * const lockP) {
+- pthread_mutex_unlock(&lockP->theLock);
+-}
++ This is constant.
++ */
++ const char * userAgent;
++ /* Information to include in a User-Agent HTTP header, reflecting
++ facilities outside of Xmlrpc-c.
+
+-static void
+-destroyLock_pthread(struct lock * const lockP) {
+- pthread_mutex_destroy(&lockP->theLock);
+- free(lockP);
+-}
++ Null means none.
+
++ The full User-Agent header value is this information (if
++ 'userAgent' is non-null) followed by identification of Xmlrpc-c
++ and Curl (if 'dontAdvertise' is false). If 'userAgent' is null
++ and 'dontAdvertise' is true, we put no User-Agent header at all
++ in the request.
+
+-static struct lock *
+-createLock_pthread(void) {
+- struct lock * lockP;
+- MALLOCVAR(lockP);
+- if (lockP) {
+- pthread_mutex_init(&lockP->theLock, NULL);
+- lockP->lock = &lock_pthread;
+- lockP->unlock = &unlock_pthread;
+- lockP->destroy = &destroyLock_pthread;
- }
+- return lockP;
-}
++ This is constant.
++ */
++ struct curlSetup curlSetupStuff;
++ /* This is constant */
++ int * interruptP;
++ /* Pointer to a value that user sets to nonzero to indicate he wants
++ the transport to give up on whatever it is doing and return ASAP.
+
++ NULL means none -- transport never gives up.
+
++ This is constant.
++ */
++};
+
+-/*=============================================================================
+- curlTransaction
+-=============================================================================*/
+
+-typedef void finishCurlTransactionFn(xmlrpc_env * const, curlTransaction * const);
+
+-struct curlTransaction {
+- /* This is all stuff that really ought to be in a Curl object, but
+- the Curl library is a little too simple for that. So we build
+- a layer on top of Curl, and define this "transaction," as an
+- object subordinate to a Curl "session." A Curl session has
+- zero or one transactions in progress. The Curl session
+- "private data" is a pointer to the CurlTransaction object for
+- the current transaction.
+- */
++struct rpc {
++ struct xmlrpc_client_transport * transportP;
++ /* The client XML transport that transports this RPC */
++ curlTransaction * curlTransactionP;
++ /* The object which does the HTTP transaction, with no knowledge
++ of XML-RPC or Xmlrpc-c.
++ */
+ CURL * curlSessionP;
+- /* Handle for the Curl session that hosts this transaction.
+- Note that only one transaction at a time can use a particular
+- Curl session, so this had better not be a session that some other
+- transaction is using simultaneously.
++ /* The Curl session to use for the Curl transaction to perform
++ the RPC.
+ */
+- finishCurlTransactionFn * finish;
+- rpc * rpcP;
+- /* The RPC which this transaction serves. (If this structure
+- were a true extension of the Curl library as described above,
+- this would be a void *, since the Curl library doesn't know what
+- an RPC is, but since we use it only for that, we might as well
+- use the specific type here).
++ xmlrpc_mem_block * responseXmlP;
++ /* Where the response XML for this RPC should go or has gone. */
++ xmlrpc_transport_asynch_complete complete;
++ /* Routine to call to complete the RPC after it is complete HTTP-wise.
++ NULL if none.
+ */
+- CURLcode result;
+- /* Result of the transaction (succeeded, TCP connect failed, etc.).
+- A properly executed HTTP transaction (request & response) counts
+- as a successful transaction. When 'result' show success,
+- curl_easy_get_info() tells you whether the transaction succeeded
+- at the HTTP level.
++ xmlrpc_transport_progress progress;
++ /* Routine to call periodically to report the progress of transporting
++ the call and response. NULL if none.
+ */
+- char curlError[CURL_ERROR_SIZE];
+- /* Error message from Curl */
+- struct curl_slist * headerList;
+- /* The HTTP headers for the transaction */
+- const char * serverUrl; /* malloc'ed - belongs to this object */
++ struct xmlrpc_call_info * callInfoP;
++ /* User's identifier for this RPC */
+ };
+
+
-
+ static void
+-interpretCurlEasyError(const char ** const descriptionP,
+- CURLcode const code) {
-
+-#if HAVE_CURL_STRERROR
+- *descriptionP = strdup(curl_easy_strerror(code));
+-#else
+- xmlrpc_asprintf(descriptionP, "Curl error code (CURLcode) %d", code);
+-#endif
++lockSyncCurlSession(struct xmlrpc_client_transport * const transportP) {
++ transportP->syncCurlSessionLockP->acquire(
++ transportP->syncCurlSessionLockP);
+ }
+
+
+
+ static void
+-interpretCurlMultiError(const char ** const descriptionP,
+- CURLMcode const code) {
-
--static void
--curlTransaction_create(xmlrpc_env * const envP,
-- CURL * const curlSessionP,
-- const xmlrpc_server_info * const serverP,
-- xmlrpc_mem_block * const callXmlP,
-- xmlrpc_mem_block * const responseXmlP,
-- const char * const userAgent,
-- const struct curlSetup * const curlSetupStuffP,
-- rpc * const rpcP,
-- int * const interruptP,
-- curlTransaction ** const curlTransactionPP) {
+-#if HAVE_CURL_STRERROR
+- *descriptionP = strdup(curl_multi_strerror(code));
+-#else
+- xmlrpc_asprintf(descriptionP, "Curl error code (CURLMcode) %d", code);
+-#endif
++unlockSyncCurlSession(struct xmlrpc_client_transport * const transportP) {
++ transportP->syncCurlSessionLockP->release(
++ transportP->syncCurlSessionLockP);
+ }
+
+
+
+ static void
+-addHeader(xmlrpc_env * const envP,
+- struct curl_slist ** const headerListP,
+- const char * const headerText) {
-
-- curlTransaction * curlTransactionP;
+- struct curl_slist * newHeaderList;
+- newHeaderList = curl_slist_append(*headerListP, headerText);
+- if (newHeaderList == NULL)
+- xmlrpc_faultf(envP,
+- "Could not add header '%s'. "
+- "curl_slist_append() failed.", headerText);
+- else
+- *headerListP = newHeaderList;
+-}
-
-- MALLOCVAR(curlTransactionP);
-- if (curlTransactionP == NULL)
-- xmlrpc_faultf(envP, "No memory to create Curl transaction.");
-- else {
-- curlTransactionP->finish = NULL;
-- curlTransactionP->curlSessionP = curlSessionP;
-- curlTransactionP->rpcP = rpcP;
-
-- curlTransactionP->serverUrl = strdup(serverP->serverUrl);
-- if (curlTransactionP->serverUrl == NULL)
-- xmlrpc_faultf(envP, "Out of memory to store server URL.");
-- else {
-- setupCurlSession(envP, curlTransactionP,
-- callXmlP, responseXmlP,
-- serverP, userAgent, interruptP,
-- curlSetupStuffP);
--
-- if (envP->fault_occurred)
-- xmlrpc_strfree(curlTransactionP->serverUrl);
-- }
-- if (envP->fault_occurred)
-- free(curlTransactionP);
-- }
-- *curlTransactionPP = curlTransactionP;
++initWindowsStuff(xmlrpc_env * const envP ATTR_UNUSED) {
+
+-static void
+-addContentTypeHeader(xmlrpc_env * const envP,
+- struct curl_slist ** const headerListP) {
++#if defined (WIN32)
++ /* This is CRITICAL so that cURL-Win32 works properly! */
+
+- addHeader(envP, headerListP, "Content-Type: text/xml");
-}
-
-
-
-static void
--curlTransaction_destroy(curlTransaction * const curlTransactionP) {
+-addUserAgentHeader(xmlrpc_env * const envP,
+- struct curl_slist ** const headerListP,
+- const char * const userAgent) {
-
-- curl_slist_free_all(curlTransactionP->headerList);
+- if (userAgent) {
+- /* Note: Curl has a CURLOPT_USERAGENT option that does some of this
+- work. We prefer to be totally in control, though, so we build
+- the header explicitly.
+- */
++ /* So this commenter says, but I wonder why. libcurl should do the
++ required WSAStartup() itself, and it looks to me like it does.
++ -Bryan 06.01.01
++ */
++ WORD wVersionRequested;
++ WSADATA wsaData;
++ int err;
++ wVersionRequested = MAKEWORD(1, 1);
+
+- curl_version_info_data * const curlInfoP =
+- curl_version_info(CURLVERSION_NOW);
+- char curlVersion[32];
+- const char * userAgentHeader;
+-
+- snprintf(curlVersion, sizeof(curlVersion), "%u.%u.%u",
+- (curlInfoP->version_num >> 16) && 0xff,
+- (curlInfoP->version_num >> 8) && 0xff,
+- (curlInfoP->version_num >> 0) && 0xff
+- );
+-
+- xmlrpc_asprintf(&userAgentHeader,
+- "User-Agent: %s Xmlrpc-c/%s Curl/%s",
+- userAgent, XMLRPC_C_VERSION, curlVersion);
+-
+- if (userAgentHeader == xmlrpc_strsol)
+- xmlrpc_faultf(envP, "Couldn't allocate memory for "
+- "User-Agent header");
+- else {
+- addHeader(envP, headerListP, userAgentHeader);
+-
+- xmlrpc_strfree(userAgentHeader);
++ err = WSAStartup(wVersionRequested, &wsaData);
++ if (err)
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_INTERNAL_ERROR,
++ "Winsock startup failed. WSAStartup returned rc %d", err);
++ else {
++ if (LOBYTE(wsaData.wVersion) != 1 || HIBYTE(wsaData.wVersion) != 1) {
++ /* Tell the user that we couldn't find a useable */
++ /* winsock.dll. */
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_INTERNAL_ERROR, "Winsock reported that "
++ "it does not implement the requested version 1.1.");
+ }
++ if (envP->fault_occurred)
++ WSACleanup();
+ }
++#endif
+ }
+
+
+
+ static void
+-addAuthorizationHeader(xmlrpc_env * const envP,
+- struct curl_slist ** const headerListP,
+- const char * const hdrValue) {
++termWindowsStuff(void) {
+
+- const char * authorizationHeader;
+-
+- xmlrpc_asprintf(&authorizationHeader, "Authorization: %s", hdrValue);
+-
+- if (authorizationHeader == xmlrpc_strsol)
+- xmlrpc_faultf(envP, "Couldn't allocate memory for "
+- "Authorization header");
+- else {
+- addHeader(envP, headerListP, authorizationHeader);
+-
+- xmlrpc_strfree(authorizationHeader);
+- }
++#if defined (WIN32)
++ WSACleanup();
++#endif
+ }
+
+
+
+-static void
+-createCurlHeaderList(xmlrpc_env * const envP,
+- const char * const authHdrValue,
+- const char * const userAgent,
+- struct curl_slist ** const headerListP) {
++static bool
++curlHasNosignal(void) {
+
+- struct curl_slist * headerList;
++ bool retval;
+
+- headerList = NULL; /* initial value - empty list */
++#if HAVE_CURL_NOSIGNAL
++ curl_version_info_data * const curlInfoP =
++ curl_version_info(CURLVERSION_NOW);
+
+- addContentTypeHeader(envP, &headerList);
+- if (!envP->fault_occurred) {
+- addUserAgentHeader(envP, &headerList, userAgent);
+- if (!envP->fault_occurred) {
+- if (authHdrValue)
+- addAuthorizationHeader(envP, &headerList, authHdrValue);
+- }
+- }
+- if (envP->fault_occurred)
+- curl_slist_free_all(headerList);
+- else
+- *headerListP = headerList;
++ retval = (curlInfoP->version_num >= 0x070A00); /* 7.10.0 */
++#else
++ retval = false;
++#endif
++ return retval;
+ }
+
+
+
+-static void
+-assertConstantsMatch(void) {
++static xmlrpc_timespec
++pselectTimeout(xmlrpc_timeoutType const timeoutType,
++ xmlrpc_timespec const timeoutDt) {
+ /*----------------------------------------------------------------------------
+- There are some constants that we define as part of the Xmlrpc-c
+- interface that are identical to constants in the Curl interface to
+- make curl option setting work. This function asserts such
+- formally.
++ Return the value that should be used in the select() call to wait for
++ there to be work for the Curl multi manager to do, given that the user
++ wants to timeout according to 'timeoutType' and 'timeoutDt'.
+ -----------------------------------------------------------------------------*/
+- assert(XMLRPC_SSLVERSION_DEFAULT == CURL_SSLVERSION_DEFAULT);
+- assert(XMLRPC_SSLVERSION_TLSv1 == CURL_SSLVERSION_TLSv1);
+- assert(XMLRPC_SSLVERSION_SSLv2 == CURL_SSLVERSION_SSLv2);
+- assert(XMLRPC_SSLVERSION_SSLv3 == CURL_SSLVERSION_SSLv3);
+-}
+-
++ unsigned int const million = 1000000;
++ unsigned int selectTimeoutMillisec;
++ xmlrpc_timespec retval;
+
++ /* We assume there is work to do at least every 3 seconds, because
++ the Curl multi manager often has retries and other scheduled work
++ that doesn't involve file handles on which we can select().
++ */
++ switch (timeoutType) {
++ case timeout_no:
++ selectTimeoutMillisec = 3000;
++ break;
++ case timeout_yes: {
++ xmlrpc_timespec nowTime;
++ int timeLeft;
+
+-static size_t
+-collect(void * const ptr,
+- size_t const size,
+- size_t const nmemb,
+- FILE * const stream) {
+-/*----------------------------------------------------------------------------
+- This is a Curl output function. Curl calls this to deliver the
+- HTTP response body to the Curl client. Curl thinks it's writing to
+- a POSIX stream.
+------------------------------------------------------------------------------*/
+- xmlrpc_mem_block * const responseXmlP = (xmlrpc_mem_block *) stream;
+- char * const buffer = ptr;
+- size_t const length = nmemb * size;
++ xmlrpc_gettimeofday(&nowTime);
++ timeLeft = timeDiffMillisec(timeoutDt, nowTime);
+
+- size_t retval;
+- xmlrpc_env env;
++ selectTimeoutMillisec = MIN(3000, MAX(0, timeLeft));
++ } break;
++ }
++ retval.tv_sec = selectTimeoutMillisec / 1000;
++ retval.tv_nsec = (uint32_t)((selectTimeoutMillisec % 1000) * million);
+
+- xmlrpc_env_init(&env);
+- xmlrpc_mem_block_append(&env, responseXmlP, buffer, length);
+- if (env.fault_occurred)
+- retval = (size_t)-1;
+- else
+- /* Really? Shouldn't it be like fread() and return 'nmemb'? */
+- retval = length;
+-
+ return retval;
+-}
+-
+-
+-
+-static int
+-curlProgress(void * const contextP,
+- double const dltotal ATTR_UNUSED,
+- double const dlnow ATTR_UNUSED,
+- double const ultotal ATTR_UNUSED,
+- double const ulnow ATTR_UNUSED) {
+-/*----------------------------------------------------------------------------
+- This is a Curl "progress function." It's something various Curl
+- functions call every so often, including whenever something gets
+- interrupted by the process receiving, and catching, a signal.
+- There are two purposes of a Curl progress function: 1) lets us log
+- the progress of a long-running transaction such as a big download,
+- e.g. by displaying a progress bar somewhere. In Xmlrpc-c, we don't
+- implement this purpose. 2) allows us to tell the Curl function,
+- via our return code, that calls it that we don't want to wait
+- anymore for the operation to complete.
+-
+- In Curl versions before March 2007, we get called once per second
+- and signals have no effect. In current Curl, we usually get called
+- immediately after a signal gets caught while Curl is waiting to
+- receive a response from the server. But Curl doesn't properly
+- synchronize with signals, so it may miss one and then we don't get
+- called until the next scheduled one-per-second call.
+-
+- All we do is tell Caller it's time to give up if the transport's
+- client says it is via his "interrupt" flag.
+-
+- This function is not as important as it once was. This module used
+- to use curl_easy_perform(), which can be interrupted only via this
+- progress function. But because of the above-mentioned failure of
+- Curl to properly synchronize signals (and Bryan's failure to get
+- Curl developers to accept code to fix it), we now use the Curl
+- "multi" facility instead and do our own pselect(). But
+- This function still normally gets called by curl_multi_perform(),
+- which the transport tries to call even when the user has requested
+- interruption, because we don't trust our ability to abort a running
+- Curl transaction. curl_multi_perform() reliably winds up a Curl
+- transaction when this function tells it to.
+------------------------------------------------------------------------------*/
+- unsigned int * const interruptP = contextP;
+-
+- /* We require anyone setting us up as the Curl progress function to
+- supply an interrupt flag:
+- */
+- assert(contextP);
+-
+- return *interruptP != 0 ? 1 : 0;
+-}
++}
+
+
+
+ static void
+-setupAuth(xmlrpc_env * const envP ATTR_UNUSED,
+- CURL * const curlSessionP,
+- const xmlrpc_server_info * const serverInfoP,
+- const char ** const authHdrValueP) {
+-/*----------------------------------------------------------------------------
+- Set the options in the Curl session 'curlSessionP' to set up the HTTP
+- authentication described by *serverInfoP.
+-
+- But we have an odd special function for backward compatibility, because
+- this code dates to a time when libcurl did not have the ability to
+- handle authentication, but we provided such function nonetheless by
+- building our own Authorization: header. But we did this only for
+- HTTP basic authentication.
+-
+- So the special function is this: if libcurl is too old to have
+- authorization options and *serverInfoP allows basic authentication,
+- return as *basicAuthHdrParamP an appropriate parameter for the
+- Authorization: Basic: HTTP header. Otherwise, return
+- *basicAuthHdrParamP == NULL.
+------------------------------------------------------------------------------*/
+- if (serverInfoP->allowedAuth.basic) {
+- CURLcode rc;
+- rc = curl_easy_setopt(curlSessionP, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
++processCurlMessages(xmlrpc_env * const envP,
++ curlMulti * const curlMultiP) {
++
++ bool endOfMessages;
+
+- if (rc == CURLE_OK)
+- *authHdrValueP = NULL;
+- else {
+- *authHdrValueP = strdup(serverInfoP->basicAuthHdrValue);
+- if (*authHdrValueP == NULL)
+- xmlrpc_faultf(envP, "Unable to allocate memory for basic "
+- "authentication header");
+- }
+- } else
+- *authHdrValueP = NULL;
+-
+- /* We don't worry if libcurl is too old for these other kinds of
+- authentication; they're only defined as _allowed_
+- authentication methods, for when client and server are capable
+- of using it, and unlike with basic authentication, we have no
+- historical commitment to consider an old libcurl as capable of
+- doing these.
+- */
+-
+- if (serverInfoP->userNamePw)
+- curl_easy_setopt(curlSessionP, CURLOPT_USERPWD,
+- serverInfoP->userNamePw);
+-
+- if (serverInfoP->allowedAuth.digest)
+- curl_easy_setopt(
+- curlSessionP, CURLOPT_HTTPAUTH, CURLAUTH_DIGEST);
+- if (serverInfoP->allowedAuth.gssnegotiate)
+- curl_easy_setopt(
+- curlSessionP, CURLOPT_HTTPAUTH, CURLAUTH_GSSNEGOTIATE);
+- if (serverInfoP->allowedAuth.ntlm)
+- curl_easy_setopt(
+- curlSessionP, CURLOPT_HTTPAUTH, CURLAUTH_NTLM);
+-}
++ endOfMessages = false; /* initial assumption */
+
++ while (!endOfMessages && !envP->fault_occurred) {
++ CURLMsg curlMsg;
+
+-static void
+-setCurlTimeout(CURL * const curlSessionP ATTR_UNUSED,
+- unsigned int const timeout ATTR_UNUSED) {
++ curlMulti_getMessage(curlMultiP, &endOfMessages, &curlMsg);
+
+-#if HAVE_CURL_NOSIGNAL
+- unsigned int const timeoutMs = (timeout + 999)/1000;
++ if (!endOfMessages) {
++ if (curlMsg.msg == CURLMSG_DONE) {
++ curlTransaction * curlTransactionP;
+
+- curl_easy_setopt(curlSessionP, CURLOPT_NOSIGNAL, 1);
++ curl_easy_getinfo(curlMsg.easy_handle, CURLINFO_PRIVATE,
++ (void *)&curlTransactionP);
+
+- assert((long)timeoutMs == (int)timeoutMs);
+- /* Calling requirement */
+- curl_easy_setopt(curlSessionP, CURLOPT_TIMEOUT, (long)timeoutMs);
+-#else
+- abort();
+-#endif
+-}
+-
+-
+-
+-static void
+-setupCurlSession(xmlrpc_env * const envP,
+- curlTransaction * const curlTransactionP,
+- xmlrpc_mem_block * const callXmlP,
+- xmlrpc_mem_block * const responseXmlP,
+- const xmlrpc_server_info * const serverInfoP,
+- const char * const userAgent,
+- int * const interruptP,
+- const struct curlSetup * const curlSetupP) {
+-/*----------------------------------------------------------------------------
+- Set up the Curl session for the transaction *curlTransactionP so that
+- a subsequent curl_easy_perform() would perform said transaction.
+-
+- The data curl_easy_perform() would send for that transaction would
+- be the contents of *callXmlP; the data curl_easy_perform() gets back
+- would go into *responseXmlP.
+-
+- 'interruptP' is a pointer to an interrupt flag -- a flag that becomes
+- nonzero when the user wants to abandon this Curl session. NULL means
+- there is no interrupt flag; user will never want to abandon the session.
+------------------------------------------------------------------------------*/
+- CURL * const curlSessionP = curlTransactionP->curlSessionP;
+-
+- assertConstantsMatch();
+-
+- curl_easy_setopt(curlSessionP, CURLOPT_POST, 1);
+- curl_easy_setopt(curlSessionP, CURLOPT_URL, curlTransactionP->serverUrl);
+-
+- XMLRPC_MEMBLOCK_APPEND(char, envP, callXmlP, "\0", 1);
+- if (!envP->fault_occurred) {
+- curl_easy_setopt(curlSessionP, CURLOPT_POSTFIELDS,
+- XMLRPC_MEMBLOCK_CONTENTS(char, callXmlP));
+- curl_easy_setopt(curlSessionP, CURLOPT_WRITEFUNCTION, collect);
+- curl_easy_setopt(curlSessionP, CURLOPT_FILE, responseXmlP);
+- curl_easy_setopt(curlSessionP, CURLOPT_HEADER, 0);
+- curl_easy_setopt(curlSessionP, CURLOPT_ERRORBUFFER,
+- curlTransactionP->curlError);
+- if (interruptP) {
+- curl_easy_setopt(curlSessionP, CURLOPT_NOPROGRESS, 0);
+- curl_easy_setopt(curlSessionP, CURLOPT_PROGRESSFUNCTION,
+- curlProgress);
+- curl_easy_setopt(curlSessionP, CURLOPT_PROGRESSDATA, interruptP);
+- } else
+- curl_easy_setopt(curlSessionP, CURLOPT_NOPROGRESS, 1);
+-
+- curl_easy_setopt(curlSessionP, CURLOPT_SSL_VERIFYPEER,
+- curlSetupP->sslVerifyPeer);
+- curl_easy_setopt(curlSessionP, CURLOPT_SSL_VERIFYHOST,
+- curlSetupP->sslVerifyHost ? 2 : 0);
+-
+- if (curlSetupP->networkInterface)
+- curl_easy_setopt(curlSessionP, CURLOPT_INTERFACE,
+- curlSetupP->networkInterface);
+- if (curlSetupP->sslCert)
+- curl_easy_setopt(curlSessionP, CURLOPT_SSLCERT,
+- curlSetupP->sslCert);
+- if (curlSetupP->sslCertType)
+- curl_easy_setopt(curlSessionP, CURLOPT_SSLCERTTYPE,
+- curlSetupP->sslCertType);
+- if (curlSetupP->sslCertPasswd)
+- curl_easy_setopt(curlSessionP, CURLOPT_SSLCERTPASSWD,
+- curlSetupP->sslCertPasswd);
+- if (curlSetupP->sslKey)
+- curl_easy_setopt(curlSessionP, CURLOPT_SSLKEY,
+- curlSetupP->sslKey);
+- if (curlSetupP->sslKeyType)
+- curl_easy_setopt(curlSessionP, CURLOPT_SSLKEYTYPE,
+- curlSetupP->sslKeyType);
+- if (curlSetupP->sslKeyPasswd)
+- curl_easy_setopt(curlSessionP, CURLOPT_SSLKEYPASSWD,
+- curlSetupP->sslKeyPasswd);
+- if (curlSetupP->sslEngine)
+- curl_easy_setopt(curlSessionP, CURLOPT_SSLENGINE,
+- curlSetupP->sslEngine);
+- if (curlSetupP->sslEngineDefault)
+- /* 3rd argument seems to be required by some Curl */
+- curl_easy_setopt(curlSessionP, CURLOPT_SSLENGINE_DEFAULT, 1l);
+- if (curlSetupP->sslVersion != XMLRPC_SSLVERSION_DEFAULT)
+- curl_easy_setopt(curlSessionP, CURLOPT_SSLVERSION,
+- curlSetupP->sslVersion);
+- if (curlSetupP->caInfo)
+- curl_easy_setopt(curlSessionP, CURLOPT_CAINFO,
+- curlSetupP->caInfo);
+- if (curlSetupP->caPath)
+- curl_easy_setopt(curlSessionP, CURLOPT_CAPATH,
+- curlSetupP->caPath);
+- if (curlSetupP->randomFile)
+- curl_easy_setopt(curlSessionP, CURLOPT_RANDOM_FILE,
+- curlSetupP->randomFile);
+- if (curlSetupP->egdSocket)
+- curl_easy_setopt(curlSessionP, CURLOPT_EGDSOCKET,
+- curlSetupP->egdSocket);
+- if (curlSetupP->sslCipherList)
+- curl_easy_setopt(curlSessionP, CURLOPT_SSL_CIPHER_LIST,
+- curlSetupP->sslCipherList);
+-
+- if (curlSetupP->timeout)
+- setCurlTimeout(curlSessionP, curlSetupP->timeout);
+-
+- {
+- const char * authHdrValue;
+- /* NULL means we don't have to construct an explicit
+- Authorization: header. non-null means we have to
+- construct one with this as its value.
+- */
+-
+- setupAuth(envP, curlSessionP, serverInfoP, &authHdrValue);
+- if (!envP->fault_occurred) {
+- struct curl_slist * headerList;
+- createCurlHeaderList(envP, authHdrValue, userAgent,
+- &headerList);
+- if (!envP->fault_occurred) {
+- curl_easy_setopt(
+- curlSessionP, CURLOPT_HTTPHEADER, headerList);
+- curlTransactionP->headerList = headerList;
+- }
+- if (authHdrValue)
+- xmlrpc_strfree(authHdrValue);
+- }
+- }
+- }
+-}
+-
+-
+-
+-static void
+-curlTransaction_create(xmlrpc_env * const envP,
+- CURL * const curlSessionP,
+- const xmlrpc_server_info * const serverP,
+- xmlrpc_mem_block * const callXmlP,
+- xmlrpc_mem_block * const responseXmlP,
+- const char * const userAgent,
+- const struct curlSetup * const curlSetupStuffP,
+- rpc * const rpcP,
+- int * const interruptP,
+- curlTransaction ** const curlTransactionPP) {
+-
+- curlTransaction * curlTransactionP;
+-
+- MALLOCVAR(curlTransactionP);
+- if (curlTransactionP == NULL)
+- xmlrpc_faultf(envP, "No memory to create Curl transaction.");
+- else {
+- curlTransactionP->finish = NULL;
+- curlTransactionP->curlSessionP = curlSessionP;
+- curlTransactionP->rpcP = rpcP;
+-
+- curlTransactionP->serverUrl = strdup(serverP->serverUrl);
+- if (curlTransactionP->serverUrl == NULL)
+- xmlrpc_faultf(envP, "Out of memory to store server URL.");
+- else {
+- setupCurlSession(envP, curlTransactionP,
+- callXmlP, responseXmlP,
+- serverP, userAgent, interruptP,
+- curlSetupStuffP);
+-
+- if (envP->fault_occurred)
+- xmlrpc_strfree(curlTransactionP->serverUrl);
+- }
+- if (envP->fault_occurred)
+- free(curlTransactionP);
+- }
+- *curlTransactionPP = curlTransactionP;
+-}
+-
+-
+-
+-static void
+-curlTransaction_destroy(curlTransaction * const curlTransactionP) {
+-
+- curl_slist_free_all(curlTransactionP->headerList);
- xmlrpc_strfree(curlTransactionP->serverUrl);
-
- free(curlTransactionP);
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
+diff --git a/libs/xmlrpc-c/lib/expat/Makefile b/libs/xmlrpc-c/lib/expat/Makefile
+new file mode 100644
+index 0000000..8feab79
+--- /dev/null
++++ b/libs/xmlrpc-c/lib/expat/Makefile
+@@ -0,0 +1,39 @@
++ifeq ($(SRCDIR),)
++ updir = $(shell echo $(dir $(1)) | sed 's/.$$//')
++ LIBDIR := $(call updir,$(CURDIR))
++ SRCDIR := $(call updir,$(LIBDIR))
++ BLDDIR := $(SRCDIR)
++endif
++SUBDIR := lib/expat
++
++include $(BLDDIR)/config.mk
++
++# Build up SUBDIRS:
++SUBDIRS = gennmtab xmlparse xmltok
++
++default: all
++
++.PHONY: all clean distclean tags distdir intall check dep
++
++all: $(SUBDIRS:%=%/all)
++
++clean: $(SUBDIRS:%=%/clean) clean-common
++
++distclean: $(SUBDIRS:%=%/distclean) distclean-common
++
++tags: $(SUBDIRS:%=%/tags) TAGS
++
++DISTFILES =
++
++distdir: distdir-common
++
++install: $(SUBDIRS:%=%/install)
++
++check:
++
++dep: $(SUBDIRS:%=%/dep)
++
++include $(SRCDIR)/common.mk
++
++
++
diff --git a/libs/xmlrpc-c/lib/expat/Makefile.in b/libs/xmlrpc-c/lib/expat/Makefile.in
deleted file mode 100644
index 121de36..0000000
-include Makefile.depend
+include depend.mk
+diff --git a/libs/xmlrpc-c/lib/expat/gennmtab/Makefile.depend b/libs/xmlrpc-c/lib/expat/gennmtab/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
diff --git a/libs/xmlrpc-c/lib/expat/gennmtab/gennmtab.dsp b/libs/xmlrpc-c/lib/expat/gennmtab/gennmtab.dsp
deleted file mode 100644
index 917dc44..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Makefile
+diff --git a/libs/xmlrpc-c/lib/expat/xmlparse/Makefile b/libs/xmlrpc-c/lib/expat/xmlparse/Makefile
+new file mode 100644
+index 0000000..71a17c0
+--- /dev/null
++++ b/libs/xmlrpc-c/lib/expat/xmlparse/Makefile
+@@ -0,0 +1,93 @@
++###############################################################################
++# This directory builds libxmlrpc_xmlparse, an XML parser. This is
++# essentially the separately distributed Expat library from 2001, but
++# with slight changes. The main reason it is bundled with Xmlrpc-c is
++# to make the latter easier to build and use.
++#
++# The library is about XML in general. There is nothing specific to
++# XML-RPC here.
++###############################################################################
++
++ifeq ($(SRCDIR),)
++ updir = $(shell echo $(dir $(1)) | sed 's/.$$//')
++ EXPATDIR := $(call updir,$(CURDIR))
++ LIBDIR := $(call updir,$(EXPATDIR))
++ SRCDIR := $(call updir,$(LIBDIR))
++ BLDDIR := $(SRCDIR)
++endif
++SUBDIR := lib/expat/xmlparse
++
++XMLTOKDIR = srcdir/lib/expat/xmltok
++UTILDIR = srcdir/lib/util
++
++default: all
++
++include $(BLDDIR)/config.mk
++
++TARGET_LIBRARY_NAMES := libxmlrpc_xmlparse
++
++STATIC_LIBRARIES_TO_INSTALL = libxmlrpc_xmlparse.a
++
++SHARED_LIBS_TO_BUILD := libxmlrpc_xmlparse
++SHARED_LIBS_TO_INSTALL := libxmlrpc_xmlparse
++
++TARGET_MODS = xmlparse
++
++OMIT_XMLPARSE_LIB_RULE=Y
++MAJ=3
++ # Major number of shared libraries in this directory
++
++include $(SRCDIR)/common.mk
++
++INCLUDES = \
++ -I$(BLDDIR) \
++ -I$(XMLTOKDIR) \
++ -I$(UTILDIR)/include \
++ -Isrcdir/include \
++
++# LIBDEP is the shared libraries on which libxmlrpc_abyss depends.
++# The runtime loader should load these libraries when it loads libxmlrpc_abyss.
++
++LIBDEP = $(LIBXMLRPC_XMLTOK) $(LIBXMLRPC_UTIL)
++
++XMLPARSE_SHLIB = $(call shlibfn,libxmlrpc_xmlparse)
++#XMLPARSE_SHLIB is e.g. libxmlrpc_xmlparse.so.3.1
++XMLPARSE_SHLIBLE = $(call shliblefn,libxmlrpc_xmlparse)
++#XMLPARSE_SHLIBLE is e.g. libxmlrpc_xmlparse.so
++
++.PHONY: all
++all: libxmlrpc_xmlparse.a $(TARGET_SHARED_LIBRARIES) $(TARGET_SHARED_LE_LIBS)
++
++# Rule for this is in common.mk, courtesy of TARGET_LIBRARY_NAMES:
++$(XMLPARSE_SHLIB): $(TARGET_MODS:%=%.osh) $(LIBDEP)
++$(XMLPARSE_SHLIB): LIBOBJECTS = $(TARGET_MODS:%=%.osh) $(LIBDEP)
++
++# Rule for this is in common.mk, courtesy of TARGET_STATIC_LIBRARIES:
++
++libxmlrpc_xmlparse.a: $(TARGET_MODS:%=%.o)
++libxmlrpc_xmlparse.a: LIBOBJECTS = $(TARGET_MODS:%=%.o)
++
++#-----------------------------------------------------------------------------
++# RULES TO COMPILE OBJECT MODULES FOR LIBRARIES
++#-----------------------------------------------------------------------------
++
++# Rules to compile object modules from which to build the static and shared
++# library are in common.mk, courtesy of TARGET_MODS.
++
++.PHONY: install
++install: install-common
++
++.PHONY: clean distclean
++clean: clean-common
++
++distclean: clean distclean-common
++
++.PHONY: dep
++dep: dep-common
++
++# This 'common.mk' dependency makes sure the symlinks get built before
++# this make file is used for anything.
++
++$(SRCDIR)/common.mk: srcdir
++
++include depend.mk
diff --git a/libs/xmlrpc-c/lib/expat/xmlparse/Makefile.in b/libs/xmlrpc-c/lib/expat/xmlparse/Makefile.in
deleted file mode 100644
index 3e715af..0000000
-include Makefile.depend
+include depend.mk
+diff --git a/libs/xmlrpc-c/lib/expat/xmltok/Makefile.depend b/libs/xmlrpc-c/lib/expat/xmltok/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
diff --git a/libs/xmlrpc-c/lib/expat/xmltok/nametab.h b/libs/xmlrpc-c/lib/expat/xmltok/nametab.h
deleted file mode 100644
index b05e62c..0000000
void
xmlrpc_strfreenull(const char * const string) {
+diff --git a/libs/xmlrpc-c/lib/libutil/base64.c b/libs/xmlrpc-c/lib/libutil/base64.c
+new file mode 100644
+index 0000000..9376eee
+--- /dev/null
++++ b/libs/xmlrpc-c/lib/libutil/base64.c
+@@ -0,0 +1,49 @@
++#include <string.h>
++
++#include "int.h"
++#include "xmlrpc-c/base64_int.h"
++
++
++
++void
++xmlrpc_base64Encode(const char * const chars,
++ char * const base64) {
++
++ /* Conversion table. */
++ static char tbl[64] = {
++ 'A','B','C','D','E','F','G','H',
++ 'I','J','K','L','M','N','O','P',
++ 'Q','R','S','T','U','V','W','X',
++ 'Y','Z','a','b','c','d','e','f',
++ 'g','h','i','j','k','l','m','n',
++ 'o','p','q','r','s','t','u','v',
++ 'w','x','y','z','0','1','2','3',
++ '4','5','6','7','8','9','+','/'
++ };
++
++ unsigned int i;
++ uint32_t length;
++ char * p;
++ const char * s;
++
++ length = strlen(chars); /* initial value */
++ s = &chars[0]; /* initial value */
++ p = &base64[0]; /* initial value */
++ /* Transform the 3x8 bits to 4x6 bits, as required by base64. */
++ for (i = 0; i < length; i += 3) {
++ *p++ = tbl[s[0] >> 2];
++ *p++ = tbl[((s[0] & 3) << 4) + (s[1] >> 4)];
++ *p++ = tbl[((s[1] & 0xf) << 2) + (s[2] >> 6)];
++ *p++ = tbl[s[2] & 0x3f];
++ s += 3;
++ }
++
++ /* Pad the result if necessary... */
++ if (i == length + 1)
++ *(p - 1) = '=';
++ else if (i == length + 2)
++ *(p - 1) = *(p - 2) = '=';
++
++ /* ...and zero-terminate it. */
++ *p = '\0';
++}
diff --git a/libs/xmlrpc-c/lib/libutil/error.c b/libs/xmlrpc-c/lib/libutil/error.c
index fd964d0..ff3bbe1 100644
--- a/libs/xmlrpc-c/lib/libutil/error.c
#include "xmlrpc-c/select_int.h"
+diff --git a/libs/xmlrpc-c/lib/libutil/string_number.c b/libs/xmlrpc-c/lib/libutil/string_number.c
+new file mode 100644
+index 0000000..1c284af
+--- /dev/null
++++ b/libs/xmlrpc-c/lib/libutil/string_number.c
+@@ -0,0 +1,46 @@
++/*============================================================================
++ string_number
++==============================================================================
++ This file contains utilities for dealing with text string representation
++ of numbers.
++============================================================================*/
++#include <stdlib.h>
++#include <string.h>
++#include <errno.h>
++
++#include <xmlrpc-c/base.h>
++#include <xmlrpc-c/util.h>
++#include <xmlrpc-c/string_int.h>
++#include "xmlrpc_config.h"
++#include "int.h"
++
++#include <xmlrpc-c/string_number.h>
++
++
++
++void
++xmlrpc_parse_int64(xmlrpc_env * const envP,
++ const char * const str,
++ xmlrpc_int64 * const i64P) {
++
++ xmlrpc_int64 i64val;
++
++ char * tail;
++
++ errno = 0;
++ i64val = XMLRPC_STRTOLL(str, &tail, 10);
++
++ if (errno == ERANGE)
++ xmlrpc_faultf(envP, "Number cannot be represented in 64 bits. "
++ "Must be in the range "
++ "[%" XMLRPC_PRId64 " - %" XMLRPC_PRId64 "]",
++ XMLRPC_INT64_MIN, XMLRPC_INT64_MAX);
++ else if (errno != 0)
++ xmlrpc_faultf(envP, "unexpected error: "
++ "strtoll() failed with errno %d (%s)",
++ errno, strerror(errno));
++ else if (tail[0] != '\0')
++ xmlrpc_faultf(envP, "contains non-numerical junk: '%s'", tail);
++ else
++ *i64P = i64val;
++}
diff --git a/libs/xmlrpc-c/lib/libutil/utf8.c b/libs/xmlrpc-c/lib/libutil/utf8.c
index d0de07e..77e436d 100644
--- a/libs/xmlrpc-c/lib/libutil/utf8.c
+# Need this dependency for those who don't use depend.mk.
# Without it, version.h doesn't get created.
xmlrpc_libwww_transport.o xmlrpc_libwww_transport.osh: version.h
+diff --git a/libs/xmlrpc-c/lib/libwww_transport/Makefile.depend b/libs/xmlrpc-c/lib/libwww_transport/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
diff --git a/libs/xmlrpc-c/lib/libwww_transport/xmlrpc_libwww_transport.c b/libs/xmlrpc-c/lib/libwww_transport/xmlrpc_libwww_transport.c
index 10866c1..1a0fcc7 100644
--- a/libs/xmlrpc-c/lib/libwww_transport/xmlrpc_libwww_transport.c
.PHONY: clean distclean
clean: clean-common
+diff --git a/libs/xmlrpc-c/lib/util/Makefile.depend b/libs/xmlrpc-c/lib/util/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
diff --git a/libs/xmlrpc-c/lib/util/casprintf.c b/libs/xmlrpc-c/lib/util/casprintf.c
index 959e4ce..0a26f4d 100644
--- a/libs/xmlrpc-c/lib/util/casprintf.c
-include Makefile.depend
+include depend.mk
+diff --git a/libs/xmlrpc-c/src/Makefile.depend b/libs/xmlrpc-c/src/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
diff --git a/libs/xmlrpc-c/src/cpp/.cvsignore b/libs/xmlrpc-c/src/cpp/.cvsignore
deleted file mode 100644
index 19bccb9..0000000
-include Makefile.depend
+include depend.mk
+diff --git a/libs/xmlrpc-c/src/cpp/Makefile.depend b/libs/xmlrpc-c/src/cpp/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
diff --git a/libs/xmlrpc-c/src/cpp/base64.cpp b/libs/xmlrpc-c/src/cpp/base64.cpp
index f9c0dac..dd07e1c 100644
--- a/libs/xmlrpc-c/src/cpp/base64.cpp
-
- testXmlRpcCpp();
-
-- testsPassed = true;
-- } catch (error thisError) {
-- cout << "Unexpected error thrown: " << thisError.what() << endl;
-- testsPassed = false;
-- } catch (XmlRpcFault& fault) {
-- cout << "Unexpected XML-RPC fault when running test suites." << endl
-- << "Fault #" << fault.getFaultCode()
-- << ": " << fault.getFaultString() << endl;
-- testsPassed = false;
-- } catch (...) {
-- cout << "Unexpected exception when running test suites." << endl;
-- testsPassed = false;
-- }
+- testsPassed = true;
+- } catch (error thisError) {
+- cout << "Unexpected error thrown: " << thisError.what() << endl;
+- testsPassed = false;
+- } catch (XmlRpcFault& fault) {
+- cout << "Unexpected XML-RPC fault when running test suites." << endl
+- << "Fault #" << fault.getFaultCode()
+- << ": " << fault.getFaultString() << endl;
+- testsPassed = false;
+- } catch (...) {
+- cout << "Unexpected exception when running test suites." << endl;
+- testsPassed = false;
+- }
+-
+- if (testsPassed) {
+- cout << "PASSED" << endl;
+- retval = 0;
+- } else {
+- cout << "FAILED" << endl;
+- retval = 1;
+- }
+- return retval;
+-}
+diff --git a/libs/xmlrpc-c/src/cpp/curl.cpp b/libs/xmlrpc-c/src/cpp/curl.cpp
+index 6181929..5751385 100644
+--- a/libs/xmlrpc-c/src/cpp/curl.cpp
++++ b/libs/xmlrpc-c/src/cpp/curl.cpp
+@@ -127,27 +127,93 @@ carriageParm_curl0Ptr::operator->() const {
+
+
+
+-clientXmlTransport_curl::constrOpt::constrOpt() {
++struct clientXmlTransport_curl::constrOpt_impl {
++
++ constrOpt_impl();
++
++ struct {
++ std::string network_interface;
++ bool no_ssl_verifypeer;
++ bool no_ssl_verifyhost;
++ bool dont_advertise;
++ std::string user_agent;
++ std::string ssl_cert;
++ std::string sslcerttype;
++ std::string sslcertpasswd;
++ std::string sslkey;
++ std::string sslkeytype;
++ std::string sslkeypasswd;
++ std::string sslengine;
++ bool sslengine_default;
++ xmlrpc_sslversion sslversion;
++ std::string cainfo;
++ std::string capath;
++ std::string randomfile;
++ std::string egdsocket;
++ std::string ssl_cipher_list;
++ unsigned int timeout;
++ std::string proxy;
++ unsigned int proxy_auth;
++ unsigned int proxy_port;
++ std::string proxy_userpwd;
++ xmlrpc_httpproxytype proxy_type;
++ } value;
++ struct {
++ bool network_interface;
++ bool no_ssl_verifypeer;
++ bool no_ssl_verifyhost;
++ bool dont_advertise;
++ bool user_agent;
++ bool ssl_cert;
++ bool sslcerttype;
++ bool sslcertpasswd;
++ bool sslkey;
++ bool sslkeytype;
++ bool sslkeypasswd;
++ bool sslengine;
++ bool sslengine_default;
++ bool sslversion;
++ bool cainfo;
++ bool capath;
++ bool randomfile;
++ bool egdsocket;
++ bool ssl_cipher_list;
++ bool timeout;
++ bool proxy;
++ bool proxy_auth;
++ bool proxy_port;
++ bool proxy_userpwd;
++ bool proxy_type;
++ } present;
++};
++
++clientXmlTransport_curl::constrOpt_impl::constrOpt_impl() {
+
+ present.network_interface = false;
+ present.no_ssl_verifypeer = false;
+ present.no_ssl_verifyhost = false;
+- present.user_agent = false;
+- present.ssl_cert = false;
+- present.sslcerttype = false;
+- present.sslcertpasswd = false;
+- present.sslkey = false;
+- present.sslkeytype = false;
+- present.sslkeypasswd = false;
+- present.sslengine = false;
++ present.dont_advertise = false;
++ present.user_agent = false;
++ present.ssl_cert = false;
++ present.sslcerttype = false;
++ present.sslcertpasswd = false;
++ present.sslkey = false;
++ present.sslkeytype = false;
++ present.sslkeypasswd = false;
++ present.sslengine = false;
+ present.sslengine_default = false;
+- present.sslversion = false;
+- present.cainfo = false;
+- present.capath = false;
+- present.randomfile = false;
+- present.egdsocket = false;
+- present.ssl_cipher_list = false;
+- present.timeout = false;
++ present.sslversion = false;
++ present.cainfo = false;
++ present.capath = false;
++ present.randomfile = false;
++ present.egdsocket = false;
++ present.ssl_cipher_list = false;
++ present.timeout = false;
++ present.proxy = false;
++ present.proxy_port = false;
++ present.proxy_auth = false;
++ present.proxy_userpwd = false;
++ present.proxy_type = false;
+ }
+
+
+@@ -155,14 +221,15 @@ clientXmlTransport_curl::constrOpt::constrOpt() {
+ #define DEFINE_OPTION_SETTER(OPTION_NAME, TYPE) \
+ clientXmlTransport_curl::constrOpt & \
+ clientXmlTransport_curl::constrOpt::OPTION_NAME(TYPE const& arg) { \
+- this->value.OPTION_NAME = arg; \
+- this->present.OPTION_NAME = true; \
++ this->implP->value.OPTION_NAME = arg; \
++ this->implP->present.OPTION_NAME = true; \
+ return *this; \
+ }
+
+ DEFINE_OPTION_SETTER(network_interface, string);
+ DEFINE_OPTION_SETTER(no_ssl_verifypeer, bool);
+ DEFINE_OPTION_SETTER(no_ssl_verifyhost, bool);
++DEFINE_OPTION_SETTER(dont_advertise, bool);
+ DEFINE_OPTION_SETTER(user_agent, string);
+ DEFINE_OPTION_SETTER(ssl_cert, string);
+ DEFINE_OPTION_SETTER(sslcerttype, string);
+@@ -179,13 +246,41 @@ DEFINE_OPTION_SETTER(randomfile, string);
+ DEFINE_OPTION_SETTER(egdsocket, string);
+ DEFINE_OPTION_SETTER(ssl_cipher_list, string);
+ DEFINE_OPTION_SETTER(timeout, unsigned int);
++DEFINE_OPTION_SETTER(proxy, string);
++DEFINE_OPTION_SETTER(proxy_port, unsigned int);
++DEFINE_OPTION_SETTER(proxy_auth, unsigned int);
++DEFINE_OPTION_SETTER(proxy_userpwd, string);
++DEFINE_OPTION_SETTER(proxy_type, xmlrpc_httpproxytype);
+
+ #undef DEFINE_OPTION_SETTER
+
++clientXmlTransport_curl::constrOpt::constrOpt() {
++
++ this->implP = new clientXmlTransport_curl::constrOpt_impl();
++}
++
++
++
++clientXmlTransport_curl::constrOpt::~constrOpt() {
++
++ delete(this->implP);
++}
++
++
++
++clientXmlTransport_curl::constrOpt::constrOpt(constrOpt& arg) {
++
++ this->implP = new constrOpt_impl(*arg.implP);
++}
++
++
++
+ #if MUST_BUILD_CURL_CLIENT
+
+ void
+-clientXmlTransport_curl::initialize(constrOpt const& opt) {
++clientXmlTransport_curl::initialize(constrOpt const& optExt) {
++ constrOpt_impl const opt(*optExt.implP);
++
+ struct xmlrpc_curl_xportparms transportParms;
+
+ transportParms.network_interface = opt.present.network_interface ?
+@@ -194,6 +289,8 @@ clientXmlTransport_curl::initialize(constrOpt const& opt) {
+ opt.value.no_ssl_verifypeer : false;
+ transportParms.no_ssl_verifyhost = opt.present.no_ssl_verifyhost ?
+ opt.value.no_ssl_verifyhost : false;
++ transportParms.dont_advertise = opt.present.dont_advertise ?
++ opt.value.dont_advertise : false;
+ transportParms.user_agent = opt.present.user_agent ?
+ opt.value.user_agent.c_str() : NULL;
+ transportParms.ssl_cert = opt.present.ssl_cert ?
+@@ -226,6 +323,16 @@ clientXmlTransport_curl::initialize(constrOpt const& opt) {
+ opt.value.ssl_cipher_list.c_str() : NULL;
+ transportParms.timeout = opt.present.timeout ?
+ opt.value.timeout : 0;
++ transportParms.proxy = opt.present.proxy ?
++ opt.value.proxy.c_str() : NULL;
++ transportParms.proxy_port = opt.present.proxy_port ?
++ opt.value.proxy_port : 0;
++ transportParms.proxy_auth = opt.present.proxy_auth ?
++ opt.value.proxy_auth : XMLRPC_HTTPAUTH_NONE;
++ transportParms.proxy_userpwd = opt.present.proxy_userpwd ?
++ opt.value.proxy_userpwd.c_str() : NULL;
++ transportParms.proxy_type = opt.present.proxy_type ?
++ opt.value.proxy_type : XMLRPC_HTTPPROXY_HTTP;
+
+ this->c_transportOpsP = &xmlrpc_curl_transport_ops;
+
+@@ -233,7 +340,7 @@ clientXmlTransport_curl::initialize(constrOpt const& opt) {
+
+ xmlrpc_curl_transport_ops.create(
+ &env.env_c, 0, "", "",
+- &transportParms, XMLRPC_CXPSIZE(timeout),
++ &transportParms, XMLRPC_CXPSIZE(dont_advertise),
+ &this->c_transportP);
+
+ if (env.env_c.fault_occurred)
+diff --git a/libs/xmlrpc-c/src/cpp/env_wrap.hpp b/libs/xmlrpc-c/src/cpp/env_wrap.hpp
+index 0172f2b..f31cb0e 100644
+--- a/libs/xmlrpc-c/src/cpp/env_wrap.hpp
++++ b/libs/xmlrpc-c/src/cpp/env_wrap.hpp
+@@ -1,11 +1,12 @@
+ #ifndef ENV_INT_HPP_INCLUDED
+ #define ENV_INT_HPP_INCLUDED
+
++#include "xmlrpc-c/c_util.h"
+ #include "xmlrpc-c/util.h"
+
+ namespace xmlrpc_c {
+
+-class env_wrap {
++class XMLRPC_DLLEXPORT env_wrap {
+ /*----------------------------------------------------------------------------
+ A wrapper to assist in using the Xmlrpc-c C libraries in
+ Xmlrpc-c C++ code.
+diff --git a/libs/xmlrpc-c/src/cpp/libwww.cpp b/libs/xmlrpc-c/src/cpp/libwww.cpp
+index 1e2998c..3a2e9a6 100644
+--- a/libs/xmlrpc-c/src/cpp/libwww.cpp
++++ b/libs/xmlrpc-c/src/cpp/libwww.cpp
+@@ -141,7 +141,8 @@ clientXmlTransport_libwww::clientXmlTransport_libwww(
+ }
+
+ #else // MUST_BUILD_LIBWWW_CLIENT
+- clientXmlTransport_libwww::clientXmlTransport_libwww(string, string) {
++ clientXmlTransport_libwww::clientXmlTransport_libwww(string const,
++ string const) {
+
+ throw(error("There is no Libwww client XML transport "
+ "in this XML-RPC client library"));
+diff --git a/libs/xmlrpc-c/src/cpp/packetsocket.cpp b/libs/xmlrpc-c/src/cpp/packetsocket.cpp
+index c984215..28fd09f 100644
+--- a/libs/xmlrpc-c/src/cpp/packetsocket.cpp
++++ b/libs/xmlrpc-c/src/cpp/packetsocket.cpp
+@@ -37,15 +37,15 @@
+
+ All bytes not part of a control word are literal bytes of a packet.
+
+- You can create a packet socket from any file descriptor from which
+- you can read and write a bidirectional character stream. Typically,
+- it's a TCP socket.
++ You can create a packet socket from a POSIX stream socket or a
++ Windows emulation of one.
+
+ One use of the NOP control word is to validate that the connection
+ is still working. You might send one periodically to detect, for
+ example, an unplugged TCP/IP network cable. It's probably better
+ to use the TCP keepalive facility for that.
+ ============================================================================*/
++#include "xmlrpc_config.h"
+
+ #include <cassert>
+ #include <string>
+@@ -54,10 +54,18 @@
+ #include <sstream>
+ #include <cstdio>
+ #include <cstdlib>
+-#include <unistd.h>
++
+ #include <errno.h>
+ #include <fcntl.h>
+-#include <poll.h>
++#if MSVCRT
++# include <winsock2.h>
++# include <io.h>
++#else
++# include <unistd.h>
++# include <poll.h>
++# include <sys/socket.h>
++#endif
++
+ #include <sys/types.h>
+
+ #include "c_util.h"
+@@ -67,10 +75,266 @@ using girerr::throwf;
+
+ #include "xmlrpc-c/packetsocket.hpp"
+
++using namespace std;
+
+ #define ESC 0x1B // ASCII Escape character
+ #define ESC_STR "\x1B"
+
++class XMLRPC_DLLEXPORT socketx {
++
++public:
++ socketx(int const sockFd);
++
++ ~socketx();
++
++ void
++ waitForReadable() const;
++
++ void
++ waitForWritable() const;
++
++ void
++ read(unsigned char * const buffer,
++ size_t const bufferSize,
++ bool * const wouldblockP,
++ size_t * const bytesReadP) const;
++
++ void
++ writeWait(const unsigned char * const data,
++ size_t const size) const;
++private:
++ int fd;
++ bool fdIsBorrowed;
++};
++
++
++
++/* Sockets are similar, but not identical between Unix and Windows.
++ Some Unix socket functions appear to be available on Windows (a
++ Unix compatibility feature), but work only for file descriptor
++ numbers < 32, so we don't use those.
++*/
++
++socketx::socketx(int const sockFd) {
++#if MSVCRT
++ // We don't have any way to duplicate; we'll just have to borrow.
++ this->fdIsBorrowed = true;
++ this->fd = sockFd;
++ u_long iMode(1); // Nonblocking mode yes
++ ioctlsocket(this->fd, FIONBIO, &iMode); // Make socket nonblocking
++#else
++ this->fdIsBorrowed = false;
++
++ int dupRc;
++
++ dupRc = dup(sockFd);
++
++ if (dupRc < 0)
++ throwf("dup() failed. errno=%d (%s)", errno, strerror(errno));
++ else {
++ this->fd = dupRc;
++ fcntl(this->fd, F_SETFL, O_NONBLOCK); // Make socket nonblocking
++ }
++#endif
++}
++
++
++
++socketx::~socketx() {
++
++ if (!this->fdIsBorrowed) {
++#if MSVCRT
++ ::closesocket(SOCKET(this->fd));
++#else
++ close(this->fd);
++#endif
++ }
++}
++
++
++
++void
++socketx::waitForReadable() const {
++ /* Return when there is something to read from the socket
++ (an EOF indication counts as something to read). Also
++ return if there is a signal (handled, of course). Rarely,
++ it is OK to return when there isn't anything to read.
++ */
++#if MSVCRT
++ // poll() is not available; settle for select().
++ // Starting in Windows Vista, there is WSApoll()
++ fd_set rd_set;
++ FD_ZERO(&rd_set);
++ FD_SET(this->fd, &rd_set);
++
++ select(this->fd + 1, &rd_set, 0, 0, 0);
++#else
++ // poll() beats select() because higher file descriptor numbers
++ // work.
++ struct pollfd pollfds[1];
++
++ pollfds[0].fd = this->fd;
++ pollfds[0].events = POLLIN;
++
++ poll(pollfds, ARRAY_SIZE(pollfds), -1);
++#endif
++}
++
++
++
++void
++socketx::waitForWritable() const {
++ /* Return when socket is able to be written to. */
++#if MSVCRT
++ fd_set wr_set;
++ FD_ZERO(&wr_set);
++ FD_SET(this->fd, &wr_set);
++
++ select(this->fd + 1, 0, &wr_set, 0, 0);
++#else
++ struct pollfd pollfds[1];
++
++ pollfds[0].fd = this->fd;
++ pollfds[0].events = POLLOUT;
++
++ poll(pollfds, ARRAY_SIZE(pollfds), -1);
++#endif
++}
++
++
++
++static bool
++wouldBlock() {
++/*----------------------------------------------------------------------------
++ The most recently executed system socket function, which we assume failed,
++ failed because the situation was such that it wanted to block, but the
++ socket had the nonblocking option.
++-----------------------------------------------------------------------------*/
++#if MSVCRT
++ return (WSAGetLastError() == WSAEWOULDBLOCK ||
++ WSAGetLastError() == WSAEINPROGRESS);
++#else
++ /* EWOULDBLOCK and EAGAIN are normally synonyms, but POSIX allows them
++ to be separate and allows the OS to return whichever one it wants
++ for the "would block" condition.
++ */
++ return (errno == EWOULDBLOCK || errno == EAGAIN);
++#endif
++}
++
++
++
++static string
++lastErrorDesc() {
++/*----------------------------------------------------------------------------
++ A description suitable for an error message of why the most recent
++ failed system socket function failed.
++-----------------------------------------------------------------------------*/
++ ostringstream msg;
++#if MSVCRT
++ int const lastError = WSAGetLastError();
++ msg << "winsock error code " << lastError << " "
++ << "(" << strerror(lastError) << ")";
++#else
++ msg << "errno = " << errno << ", (" << strerror(errno);
++#endif
++ return msg.str();
++}
++
++
++
++
++void
++socketx::read(unsigned char * const buffer,
++ size_t const bufferSize,
++ bool * const wouldblockP,
++ size_t * const bytesReadP) const {
++
++ int rc;
++
++ // We've seen a Windows library whose recv() expects a char * buffer
++ // (cf POSIX void *), so we cast.
++
++ rc = recv(this->fd, (char *)buffer, bufferSize, 0);
++
++ if (rc < 0) {
++ if (wouldBlock()) {
++ *wouldblockP = true;
++ *bytesReadP = 0;
++ } else
++ throwf("read() of socket failed with %s", lastErrorDesc().c_str());
++ } else {
++ *wouldblockP = false;
++ *bytesReadP = rc;
++ }
++}
++
++
++
++static void
++writeFd(int const fd,
++ const unsigned char * const data,
++ size_t const size,
++ size_t * const bytesWrittenP) {
++
++ size_t totalBytesWritten;
++ bool full; // File image is "full" for now - won't take any more data
++
++ full = false;
++ totalBytesWritten = 0;
++
++ while (totalBytesWritten < size && !full) {
++ int rc;
++
++ rc = send(fd, (char*)&data[totalBytesWritten],
++ size - totalBytesWritten, 0);
++
++ if (rc < 0) {
++ if (wouldBlock())
++ full = true;
++ else
++ throwf("write() of socket failed with %s",
++ lastErrorDesc().c_str());
++ } else if (rc == 0)
++ throwf("Zero byte short write.");
++ else {
++ size_t const bytesWritten(rc);
++ totalBytesWritten += bytesWritten;
++ }
++ }
++ *bytesWrittenP = totalBytesWritten;
++}
++
++
++
++void
++socketx::writeWait(const unsigned char * const data,
++ size_t const size) const {
++/*----------------------------------------------------------------------------
++ Write the 'size' bytes at 'data' to the socket. Wait as long
++ as it takes for the file image to be able to take all the data.
++-----------------------------------------------------------------------------*/
++ size_t totalBytesWritten;
++
++ // We do the first one blind because it will probably just work
++ // and we don't want to waste the poll() call and buffer arithmetic.
++
++ writeFd(this->fd, data, size, &totalBytesWritten);
++
++ while (totalBytesWritten < size) {
++ this->waitForWritable();
++
++ size_t bytesWritten;
++
++ writeFd(this->fd, &data[totalBytesWritten], size - totalBytesWritten,
++ &bytesWritten);
++
++ totalBytesWritten += bytesWritten;
++ }
++}
++
++
++
+ namespace xmlrpc_c {
+
+
+@@ -86,7 +350,7 @@ packet::initialize(const unsigned char * const data,
+ this->bytes = reinterpret_cast<unsigned char *>(malloc(dataLength));
+
+ if (this->bytes == NULL)
+- throwf("Can't get storage for a %u-byte packet.", dataLength);
++ throwf("Can't get storage for a %u-byte packet", (unsigned)dataLength);
+
+ this->allocSize = dataLength;
+
+@@ -138,7 +402,7 @@ packet::addData(const unsigned char * const data,
+ realloc(this->bytes, neededSize));
+
+ if (this->bytes == NULL)
+- throwf("Can't get storage for a %u-byte packet.", neededSize);
++ throwf("Can't get storage for a %u-byte packet", (unsigned)neededSize);
+
+ memcpy(this->bytes + this->length, data, dataLength);
+
+@@ -166,33 +430,83 @@ packetPtr::operator->() const {
+
+
+
+-packetSocket::packetSocket(int const sockFd) {
+-
+- int dupRc;
+-
+- dupRc = dup(sockFd);
+-
+- if (dupRc < 0)
+- throwf("dup() failed. errno=%d (%s)", errno, strerror(errno));
+- else {
+- this->sockFd = dupRc;
+-
+- this->inEscapeSeq = false;
+- this->inPacket = false;
+-
+- this->escAccum.len = 0;
+-
+- fcntl(this->sockFd, F_SETFL, O_NONBLOCK);
++class packetSocket_impl {
+
+- this->eof = false;
+- }
+-}
++public:
++ packetSocket_impl(int const sockFd);
+
++ void
++ writeWait(packetPtr const& packetP) const;
+
++ void
++ read(bool * const eofP,
++ bool * const gotPacketP,
++ packetPtr * const packetPP);
+
+-packetSocket::~packetSocket() {
++ void
++ readWait(volatile const int * const interruptP,
++ bool * const eofP,
++ bool * const gotPacketP,
++ packetPtr * const packetPP);
+
+- close(this->sockFd);
++private:
++ socketx sock;
++ // The kernel stream socket we use.
++ bool eof;
++ // The packet socket is at end-of-file for reads.
++ // 'readBuffer' is empty and there won't be any more data to fill
++ // it because the underlying stream socket is closed.
++ std::queue<packetPtr> readBuffer;
++ packetPtr packetAccumP;
++ // The receive packet we're currently accumulating; it will join
++ // 'readBuffer' when we've received the whole packet (and we've
++ // seen the END escape sequence so we know we've received it all).
++ // If we're not currently accumulating a packet (haven't seen a
++ // PKT escape sequence), this points to nothing.
++ bool inEscapeSeq;
++ // In our trek through the data read from the underlying stream
++ // socket, we are after an ESC character and before the end of the
++ // escape sequence. 'escAccum' shows what of the escape sequence
++ // we've seen so far.
++ bool inPacket;
++ // We're now receiving packet data from the underlying stream
++ // socket. We've seen a complete PKT escape sequence, but have not
++ // seen a complete END escape sequence since.
++ struct {
++ unsigned char bytes[3];
++ size_t len;
++ } escAccum;
++
++ void
++ takeSomeEscapeSeq(const unsigned char * const buffer,
++ size_t const length,
++ size_t * const bytesTakenP);
++
++ void
++ takeSomePacket(const unsigned char * const buffer,
++ size_t const length,
++ size_t * const bytesTakenP);
++
++ void
++ verifyNothingAccumulated();
++
++ void
++ processBytesRead(const unsigned char * const buffer,
++ size_t const bytesRead);
++
++ void
++ readFromFile();
++};
++
++
++
++packetSocket_impl::packetSocket_impl(int const sockFd) :
++ sock(sockFd) {
++
++ this->inEscapeSeq = false;
++ this->inPacket = false;
++ this->escAccum.len = 0;
++ this->eof = false;
+ }
+
+
+@@ -229,106 +543,27 @@ packetSocket::~packetSocket() {
+ -----------------------------------------------------------------------------*/
+
+
+-static void
+-writeFd(int const fd,
+- const unsigned char * const data,
+- size_t const size,
+- size_t * const bytesWrittenP) {
+-
+- size_t totalBytesWritten;
+- bool full; // File image is "full" for now - won't take any more data
+-
+- full = false;
+- totalBytesWritten = 0;
+-
+- while (totalBytesWritten < size && !full) {
+- ssize_t rc;
+-
+- rc = write(fd, &data[totalBytesWritten], size - totalBytesWritten);
+-
+- if (rc < 0) {
+- if (errno == EAGAIN)
+- full = true;
+- else
+- throwf("write() of socket failed with errno %d (%s)",
+- errno, strerror(errno));
+- } else if (rc == 0)
+- throwf("Zero byte short write.");
+- else {
+- size_t const bytesWritten(rc);
+- totalBytesWritten += bytesWritten;
+- }
+- }
+- *bytesWrittenP = totalBytesWritten;
+-}
+-
+-
+-
+-static void
+-writeFdWait(int const fd,
+- const unsigned char * const data,
+- size_t const size) {
+-/*----------------------------------------------------------------------------
+- Write the 'size' bytes at 'data' to the file image 'fd'. Wait as long
+- as it takes for the file image to be able to take all the data.
+------------------------------------------------------------------------------*/
+- size_t totalBytesWritten;
+-
+- // We do the first one blind because it will probably just work
+- // and we don't want to waste the poll() call and buffer arithmetic.
+-
+- writeFd(fd, data, size, &totalBytesWritten);
+-
+- while (totalBytesWritten < size) {
+- struct pollfd pollfds[1];
+-
+- pollfds[0].fd = fd;
+- pollfds[0].events = POLLOUT;
+-
+- poll(pollfds, ARRAY_SIZE(pollfds), -1);
+-
+- size_t bytesWritten;
+-
+- writeFd(fd, &data[totalBytesWritten], size - totalBytesWritten,
+- &bytesWritten);
+-
+- totalBytesWritten += bytesWritten;
+- }
+-}
+-
+-
+-
+ void
+-packetSocket::writeWait(packetPtr const& packetP) const {
++packetSocket_impl::writeWait(packetPtr const& packetP) const {
+
+ const unsigned char * const packetStart(
+ reinterpret_cast<const unsigned char *>(ESC_STR "PKT"));
+ const unsigned char * const packetEnd(
+ reinterpret_cast<const unsigned char *>(ESC_STR "END"));
+
+- writeFdWait(this->sockFd, packetStart, 4);
+-
+- writeFdWait(this->sockFd, packetP->getBytes(), packetP->getLength());
++ this->sock.writeWait(packetStart, 4);
+
+- writeFdWait(this->sockFd, packetEnd, 4);
+-}
+-
+-
+-
+-static ssize_t
+-libc_read(int const fd,
+- void * const buf,
+- size_t const count) {
++ this->sock.writeWait(packetP->getBytes(), packetP->getLength());
+
+- return read(fd, buf, count);
++ this->sock.writeWait(packetEnd, 4);
+ }
+
+
+
+ void
+-packetSocket::takeSomeEscapeSeq(const unsigned char * const buffer,
+- size_t const length,
+- size_t * const bytesTakenP) {
++packetSocket_impl::takeSomeEscapeSeq(const unsigned char * const buffer,
++ size_t const length,
++ size_t * const bytesTakenP) {
+ /*----------------------------------------------------------------------------
+ Take and process some bytes from the incoming stream 'buffer',
+ which contains 'length' bytes, assuming they are within an escape
+@@ -378,9 +613,9 @@ packetSocket::takeSomeEscapeSeq(const unsigned char * const buffer,
+
+
+ void
+-packetSocket::takeSomePacket(const unsigned char * const buffer,
+- size_t const length,
+- size_t * const bytesTakenP) {
++packetSocket_impl::takeSomePacket(const unsigned char * const buffer,
++ size_t const length,
++ size_t * const bytesTakenP) {
+
+ assert(!this->inEscapeSeq);
+
+@@ -408,7 +643,7 @@ packetSocket::takeSomePacket(const unsigned char * const buffer,
+
+
+ void
+-packetSocket::verifyNothingAccumulated() {
++packetSocket_impl::verifyNothingAccumulated() {
+ /*----------------------------------------------------------------------------
+ Throw an error if there is a partial packet accumulated.
+ -----------------------------------------------------------------------------*/
+@@ -419,14 +654,14 @@ packetSocket::verifyNothingAccumulated() {
+ if (this->inPacket)
+ throwf("Stream socket closed in the middle of a packet "
+ "(%u bytes of packet received; no END marker to mark "
+- "end of packet)", this->packetAccumP->getLength());
++ "end of packet)", (unsigned)this->packetAccumP->getLength());
+ }
+
+
+
+ void
+-packetSocket::processBytesRead(const unsigned char * const buffer,
+- size_t const bytesRead) {
++packetSocket_impl::processBytesRead(const unsigned char * const buffer,
++ size_t const bytesRead) {
+
+ unsigned int cursor; // Cursor into buffer[]
+ cursor = 0;
+@@ -456,7 +691,7 @@ packetSocket::processBytesRead(const unsigned char * const buffer,
+
+
+ void
+-packetSocket::readFromFile() {
++packetSocket_impl::readFromFile() {
+ /*----------------------------------------------------------------------------
+ Read some data from the underlying stream socket. Read as much as is
+ available right now, up to 4K. Update 'this' to reflect the data read.
+@@ -473,19 +708,11 @@ packetSocket::readFromFile() {
+
+ while (this->readBuffer.empty() && !this->eof && !wouldblock) {
+ unsigned char buffer[4096];
+- ssize_t rc;
++ size_t bytesRead;
+
+- rc = libc_read(this->sockFd, buffer, sizeof(buffer));
+-
+- if (rc < 0) {
+- if (errno == EWOULDBLOCK)
+- wouldblock = true;
+- else
+- throwf("read() of socket failed with errno %d (%s)",
+- errno, strerror(errno));
+- } else {
+- size_t const bytesRead(rc);
++ this->sock.read(buffer, sizeof(buffer), &wouldblock, &bytesRead);
+
++ if (!wouldblock) {
+ if (bytesRead == 0) {
+ this->eof = true;
+ this->verifyNothingAccumulated();
+@@ -498,9 +725,9 @@ packetSocket::readFromFile() {
+
+
+ void
+-packetSocket::read(bool * const eofP,
+- bool * const gotPacketP,
+- packetPtr * const packetPP) {
++packetSocket_impl::read(bool * const eofP,
++ bool * const gotPacketP,
++ packetPtr * const packetPP) {
+ /*----------------------------------------------------------------------------
+ Read one packet from the socket, through the internal packet buffer.
+
+@@ -535,10 +762,10 @@ packetSocket::read(bool * const eofP,
+
+
+ void
+-packetSocket::readWait(volatile const int * const interruptP,
+- bool * const eofP,
+- bool * const gotPacketP,
+- packetPtr * const packetPP) {
++packetSocket_impl::readWait(volatile const int * const interruptP,
++ bool * const eofP,
++ bool * const gotPacketP,
++ packetPtr * const packetPP) {
+
+ bool gotPacket;
+ bool eof;
+@@ -547,13 +774,8 @@ packetSocket::readWait(volatile const int * const interruptP,
+ eof = false;
+
+ while (!gotPacket && !eof && !*interruptP) {
+- struct pollfd pollfds[1];
+-
+- pollfds[0].fd = this->sockFd;
+- pollfds[0].events = POLLIN;
+-
+- poll(pollfds, ARRAY_SIZE(pollfds), -1);
+
++ this->sock.waitForReadable();
+ this->read(&eof, &gotPacket, packetPP);
+ }
+
+@@ -563,6 +785,49 @@ packetSocket::readWait(volatile const int * const interruptP,
+
+
+
++packetSocket::packetSocket(int const sockFd) {
++
++ this->implP = new packetSocket_impl(sockFd);
++}
++
++
++
++packetSocket::~packetSocket() {
++
++ delete(this->implP);
++}
++
++
++
++void
++packetSocket::writeWait(packetPtr const& packetP) const {
++
++ implP->writeWait(packetP);
++}
++
++
++
++void
++packetSocket::read(bool * const eofP,
++ bool * const gotPacketP,
++ packetPtr * const packetPP) {
++
++ this->implP->read(eofP, gotPacketP, packetPP);
++}
++
++
++
++void
++packetSocket::readWait(volatile const int * const interruptP,
++ bool * const eofP,
++ bool * const gotPacketP,
++ packetPtr * const packetPP) {
++
++ this->implP->readWait(interruptP, eofP, gotPacketP, packetPP);
++}
++
++
++
+ void
+ packetSocket::readWait(volatile const int * const interruptP,
+ bool * const eofP,
+@@ -570,7 +835,7 @@ packetSocket::readWait(volatile const int * const interruptP,
+
+ bool gotPacket;
+
+- this->readWait(interruptP, eofP, &gotPacket, packetPP);
++ this->implP->readWait(interruptP, eofP, &gotPacket, packetPP);
+
+ if (!gotPacket)
+ throwf("Packet read was interrupted");
+diff --git a/libs/xmlrpc-c/src/cpp/pstream.cpp b/libs/xmlrpc-c/src/cpp/pstream.cpp
+index 6a75160..fd2a31d 100644
+--- a/libs/xmlrpc-c/src/cpp/pstream.cpp
++++ b/libs/xmlrpc-c/src/cpp/pstream.cpp
+@@ -37,9 +37,24 @@ using namespace std;
+ namespace xmlrpc_c {
+
+
+-clientXmlTransport_pstream::constrOpt::constrOpt() {
+
+- present.fd = false;
++struct clientXmlTransport_pstream::constrOpt_impl {
++
++ constrOpt_impl();
++
++ struct {
++ int fd;
++ } value;
++ struct {
++ bool fd;
++ } present;
++};
++
++
++
++clientXmlTransport_pstream::constrOpt_impl::constrOpt_impl() {
++
++ this->present.fd = false;
+ }
+
+
+@@ -47,8 +62,8 @@ clientXmlTransport_pstream::constrOpt::constrOpt() {
+ #define DEFINE_OPTION_SETTER(OPTION_NAME, TYPE) \
+ clientXmlTransport_pstream::constrOpt & \
+ clientXmlTransport_pstream::constrOpt::OPTION_NAME(TYPE const& arg) { \
+- this->value.OPTION_NAME = arg; \
+- this->present.OPTION_NAME = true; \
++ this->implP->value.OPTION_NAME = arg; \
++ this->implP->present.OPTION_NAME = true; \
+ return *this; \
+ }
+
+@@ -58,7 +73,31 @@ DEFINE_OPTION_SETTER(fd, xmlrpc_socket);
+
+
+
+-clientXmlTransport_pstream::clientXmlTransport_pstream(constrOpt const& opt) {
++clientXmlTransport_pstream::constrOpt::constrOpt() {
++
++ this->implP = new clientXmlTransport_pstream::constrOpt_impl();
++}
++
++
++
++clientXmlTransport_pstream::constrOpt::~constrOpt() {
++
++ delete(this->implP);
++}
++
++
++
++clientXmlTransport_pstream::constrOpt::constrOpt(constrOpt& arg) {
++
++ this->implP = new clientXmlTransport_pstream::constrOpt_impl(*arg.implP);
++}
++
++
++
++clientXmlTransport_pstream::clientXmlTransport_pstream(
++ constrOpt const& optExt) {
++
++ constrOpt_impl const opt(*optExt.implP);
+
+ if (!opt.present.fd)
+ throwf("You must provide a 'fd' constructor option.");
+diff --git a/libs/xmlrpc-c/src/cpp/registry.cpp b/libs/xmlrpc-c/src/cpp/registry.cpp
+index 26bfa95..9b3bc3e 100644
+--- a/libs/xmlrpc-c/src/cpp/registry.cpp
++++ b/libs/xmlrpc-c/src/cpp/registry.cpp
+@@ -59,6 +59,24 @@ methodPtr::operator->() const {
+
+
+
++method2::method2() {}
++
++
++
++method2::~method2() {}
++
++
++void
++method2::execute(xmlrpc_c::paramList const& paramList,
++ xmlrpc_c::value * const resultP) {
++
++ callInfo const nullCallInfo;
++
++ execute(paramList, &nullCallInfo, resultP);
++}
++
++
++
+ defaultMethod::~defaultMethod() {}
+
+
+@@ -90,7 +108,32 @@ defaultMethodPtr::get() const {
+
+
+
+-registry::registry() {
++struct registry_impl {
++
++ xmlrpc_registry * c_registryP;
++ // Pointer to the C registry object we use to implement this
++ // object.
++
++ std::list<xmlrpc_c::methodPtr> methodList;
++ // This is a list of all the method objects (actually, pointers
++ // to them). But since the real registry is the C registry object,
++ // all this list is for is to maintain references to the objects
++ // to which the C registry points so that they continue to exist.
++
++ xmlrpc_c::defaultMethodPtr defaultMethodP;
++ // The real identifier of the default method is the C registry
++ // object; this member exists only to maintain a reference to the
++ // object to which the C registry points so that it will continue
++ // to exist.
++
++ registry_impl();
++
++ ~registry_impl();
++};
++
++
++
++registry_impl::registry_impl() {
+
+ env_wrap env;
+
+@@ -101,12 +144,25 @@ registry::registry() {
+
+
+
+-registry::~registry(void) {
++registry_impl::~registry_impl() {
+
+ xmlrpc_registry_free(this->c_registryP);
+ }
+
+
++registry::registry() {
++
++ this->implP = new registry_impl();
++}
++
++
++
++registry::~registry(void) {
++
++ delete(this->implP);
++}
++
++
+
+ registryPtr::registryPtr() {}
+
+@@ -173,7 +229,8 @@ pListFromXmlrpcArray(xmlrpc_value * const arrayP) {
+ static xmlrpc_value *
+ c_executeMethod(xmlrpc_env * const envP,
+ xmlrpc_value * const paramArrayP,
+- void * const methodPtr) {
++ void * const methodPtr,
++ void * const callInfoPtr) {
+ /*----------------------------------------------------------------------------
+ This is a function designed to be called via a C registry to
+ execute an XML-RPC method, but use a C++ method object to do the
+@@ -188,18 +245,25 @@ c_executeMethod(xmlrpc_env * const envP,
+ encounter in processing the result it returns, and turn it into an
+ XML-RPC method failure. This will cause a leak if the execute()
+ method actually created a result, since it will not get destroyed.
++
++ This function is of type 'xmlrpc_method2'.
+ -----------------------------------------------------------------------------*/
+- xmlrpc_c::method * const methodP =
+- static_cast<xmlrpc_c::method *>(methodPtr);
+- xmlrpc_c::paramList const paramList(pListFromXmlrpcArray(paramArrayP));
++ method * const methodP(static_cast<method *>(methodPtr));
++ paramList const paramList(pListFromXmlrpcArray(paramArrayP));
++ callInfo * const callInfoP(static_cast<callInfo *>(callInfoPtr));
+
+ xmlrpc_value * retval;
++ retval = NULL; // silence used-before-set warning
+
+ try {
+- xmlrpc_c::value result;
++ value result;
+
+ try {
+- methodP->execute(paramList, &result);
++ method2 * const method2P(dynamic_cast<method2 *>(methodP));
++ if (method2P)
++ method2P->execute(paramList, callInfoP, &result);
++ else
++ methodP->execute(paramList, &result);
+ } catch (xmlrpc_c::fault const& fault) {
+ xmlrpc_env_set_fault(envP, fault.getCode(),
+ fault.getDescription().c_str());
+@@ -256,6 +320,7 @@ c_executeDefaultMethod(xmlrpc_env * const envP,
+ paramList const paramList(pListFromXmlrpcArray(paramArrayP));
+
+ xmlrpc_value * retval;
++ retval = NULL; // silence used-before-set warning
+
+ try {
+ xmlrpc_c::value result;
+@@ -296,15 +361,22 @@ void
+ registry::addMethod(string const name,
+ methodPtr const methodP) {
+
+- this->methodList.push_back(methodP);
++ this->implP->methodList.push_back(methodP);
+
++ struct xmlrpc_method_info3 methodInfo;
+ env_wrap env;
++
++ methodInfo.methodName = name.c_str();
++ methodInfo.methodFunction = &c_executeMethod;
++ methodInfo.serverInfo = methodP.get();
++ methodInfo.stackSize = 0;
++ string const signatureString(methodP->signature());
++ methodInfo.signatureString = signatureString.c_str();
++ string const help(methodP->help());
++ methodInfo.help = help.c_str();
+
+- xmlrpc_registry_add_method_w_doc(
+- &env.env_c, this->c_registryP, NULL,
+- name.c_str(), &c_executeMethod,
+- (void*) methodP.get(),
+- methodP->signature().c_str(), methodP->help().c_str());
++ xmlrpc_registry_add_method3(&env.env_c, this->implP->c_registryP,
++ &methodInfo);
+
+ throwIfError(env);
+ }
+@@ -314,12 +386,12 @@ registry::addMethod(string const name,
+ void
+ registry::setDefaultMethod(defaultMethodPtr const methodP) {
+
+- this->defaultMethodP = methodP;
++ this->implP->defaultMethodP = methodP;
+
+ env_wrap env;
+
+ xmlrpc_registry_set_default_method(
+- &env.env_c, this->c_registryP,
++ &env.env_c, this->implP->c_registryP,
+ &c_executeDefaultMethod, (void*) methodP.get());
+
+ throwIfError(env);
+@@ -330,7 +402,7 @@ registry::setDefaultMethod(defaultMethodPtr const methodP) {
+ void
+ registry::disableIntrospection() {
+
+- xmlrpc_registry_disable_introspection(this->c_registryP);
++ xmlrpc_registry_disable_introspection(this->implP->c_registryP);
+ }
+
+
+@@ -362,7 +434,7 @@ registry::setShutdown(const registry::shutdown * const shutdownP) {
+
+ void * const context(const_cast<registry::shutdown *>(shutdownP));
+
+- xmlrpc_registry_set_shutdown(this->c_registryP,
++ xmlrpc_registry_set_shutdown(this->implP->c_registryP,
+ &shutdownServer,
+ context);
+ }
+@@ -374,9 +446,49 @@ registry::setDialect(xmlrpc_dialect const dialect) {
+
+ env_wrap env;
+
+- xmlrpc_registry_set_dialect(&env.env_c, this->c_registryP, dialect);
++ xmlrpc_registry_set_dialect(&env.env_c, this->implP->c_registryP, dialect);
++
++ throwIfError(env);
++}
++
++
++
++void
++registry::processCall(string const& callXml,
++ const callInfo * const callInfoP,
++ string * const responseXmlP) const {
++/*----------------------------------------------------------------------------
++ Process an XML-RPC call whose XML is 'callXml'.
++
++ Return the response XML as *responseXmlP.
++
++ If we are unable to execute the call, we throw an error. But if
++ the call executes and the method merely fails in an XML-RPC sense, we
++ don't. In that case, *responseXmlP indicates the failure.
++-----------------------------------------------------------------------------*/
++ env_wrap env;
++ xmlrpc_mem_block * response;
++
++ // For the pure C++ version, this will have to parse 'callXml'
++ // into a method name and parameters, look up the method name in
++ // the registry, call the method's execute() method, then marshall
++ // the result into XML and return it as *responseXmlP. It will
++ // also have to execute system methods (e.g. introspection)
++ // itself. This will be more or less like what
++ // xmlrpc_registry_process_call() does.
++
++ xmlrpc_registry_process_call2(
++ &env.env_c, this->implP->c_registryP,
++ callXml.c_str(), callXml.length(),
++ const_cast<callInfo *>(callInfoP),
++ &response);
+
+ throwIfError(env);
++
++ *responseXmlP = string(XMLRPC_MEMBLOCK_CONTENTS(char, response),
++ XMLRPC_MEMBLOCK_SIZE(char, response));
++
++ xmlrpc_mem_block_free(response);
+ }
+
+
+@@ -405,7 +517,7 @@ registry::processCall(string const& callXml,
+ // xmlrpc_registry_process_call() does.
+
+ output = xmlrpc_registry_process_call(
+- &env.env_c, this->c_registryP, NULL,
++ &env.env_c, this->implP->c_registryP, NULL,
+ callXml.c_str(), callXml.length());
+
+ throwIfError(env);
+@@ -416,12 +528,24 @@ registry::processCall(string const& callXml,
+ xmlrpc_mem_block_free(output);
+ }
+
+-xmlrpc_registry *
+-registry::c_registry() const {
+
+- return this->c_registryP;
++
++#define PROCESS_CALL_STACK_SIZE 256
++ // This is our liberal estimate of how much stack space
++ // registry::processCall() needs, not counting what
++ // the call the to C registry uses.
++
++
++
++size_t
++registry::maxStackSize() const {
++
++ return xmlrpc_registry_max_stackSize(this->implP->c_registryP) +
++ PROCESS_CALL_STACK_SIZE;
+ }
+
++
++
+ } // namespace
+
+
+diff --git a/libs/xmlrpc-c/src/cpp/server_abyss.cpp b/libs/xmlrpc-c/src/cpp/server_abyss.cpp
+index 3501f35..58fdd9b 100644
+--- a/libs/xmlrpc-c/src/cpp/server_abyss.cpp
++++ b/libs/xmlrpc-c/src/cpp/server_abyss.cpp
+@@ -1,10 +1,11 @@
++#include "xmlrpc_config.h"
+ #include <cstdlib>
+ #include <string>
+ #include <memory>
+ #include <signal.h>
+ #include <errno.h>
+ #include <iostream>
+-#ifndef _WIN32
++#if !MSVCRT
+ #include <sys/wait.h>
+ #endif
+
+@@ -14,9 +15,13 @@
+ using girerr::error;
+ using girerr::throwf;
+ #include "xmlrpc-c/base.h"
++#include "xmlrpc-c/util.h"
+ #include "xmlrpc-c/base.hpp"
++#include "xmlrpc-c/abyss.h"
+ #include "xmlrpc-c/server_abyss.h"
+ #include "xmlrpc-c/registry.hpp"
++#include "env_wrap.hpp"
++
+ #include "xmlrpc-c/server_abyss.hpp"
+
+ using namespace std;
+@@ -43,14 +48,13 @@ sigchld(int const ASSERT_ONLY_ARG(signalClass)) {
+ This is a signal handler for a SIGCHLD signal (which informs us that
+ one of our child processes has terminated).
+
+- We respond by reaping the zombie process.
+-
+- Implementation note: In some systems, just setting the signal handler
+- to SIG_IGN (ignore signal) does this. In some, the system does this
+- automatically if the signal is blocked.
++ The only child processes we have are those that belong to the Abyss
++ server (and then only if the Abyss server was configured to use
++ forking as a threading mechanism), so we respond by passing the
++ signal on to the Abyss server. And reaping the dead child.
+ -----------------------------------------------------------------------------*/
+ #ifndef _WIN32
+- /* Reap zombie children until there aren't any more. */
++ // Reap zombie children / report to Abyss until there aren't any more.
+
+ bool zombiesExist;
+ bool error;
+@@ -71,7 +75,8 @@ sigchld(int const ASSERT_ONLY_ARG(signalClass)) {
+ // This is OK - it's a ptrace notification
+ } else
+ error = true;
+- }
++ } else
++ ServerHandleSigchld(pid);
+ }
+ #endif /* _WIN32 */
+ }
+@@ -160,41 +165,78 @@ public:
+
+
+
+-serverAbyss::shutdown::shutdown(serverAbyss * const serverAbyssP) :
+- serverAbyssP(serverAbyssP) {}
+-
+-
+-
+-serverAbyss::shutdown::~shutdown() {}
+-
+-
+-
+-void
+-serverAbyss::shutdown::doit(string const&,
+- void * const) const {
+-
+- this->serverAbyssP->terminate();
+-}
++callInfo_serverAbyss::callInfo_serverAbyss(
++ serverAbyss * const serverAbyssP,
++ TSession * const abyssSessionP) :
++ serverAbyssP(serverAbyssP), abyssSessionP(abyssSessionP) {}
++
++
++
++struct serverAbyss::constrOpt_impl {
++
++ constrOpt_impl();
++
++ struct value {
++ xmlrpc_c::registryPtr registryPtr;
++ const xmlrpc_c::registry * registryP;
++ XMLRPC_SOCKET socketFd;
++ unsigned int portNumber;
++ std::string logFileName;
++ unsigned int keepaliveTimeout;
++ unsigned int keepaliveMaxConn;
++ unsigned int timeout;
++ bool dontAdvertise;
++ std::string uriPath;
++ bool chunkResponse;
++ std::string allowOrigin;
++ unsigned int accessCtlMaxAge;
++ bool serverOwnsSignals;
++ bool expectSigchld;
++ } value;
++ struct {
++ bool registryPtr;
++ bool registryP;
++ bool socketFd;
++ bool portNumber;
++ bool logFileName;
++ bool keepaliveTimeout;
++ bool keepaliveMaxConn;
++ bool timeout;
++ bool dontAdvertise;
++ bool uriPath;
++ bool chunkResponse;
++ bool allowOrigin;
++ bool accessCtlMaxAge;
++ bool serverOwnsSignals;
++ bool expectSigchld;
++ } present;
++};
+
+
+
+-serverAbyss::constrOpt::constrOpt() {
+- present.registryPtr = false;
+- present.registryP = false;
+- present.socketFd = false;
+- present.portNumber = false;
+- present.logFileName = false;
+- present.keepaliveTimeout = false;
+- present.keepaliveMaxConn = false;
+- present.timeout = false;
+- present.dontAdvertise = false;
+- present.uriPath = false;
+- present.chunkResponse = false;
++serverAbyss::constrOpt_impl::constrOpt_impl() {
++ present.registryPtr = false;
++ present.registryP = false;
++ present.socketFd = false;
++ present.portNumber = false;
++ present.logFileName = false;
++ present.keepaliveTimeout = false;
++ present.keepaliveMaxConn = false;
++ present.timeout = false;
++ present.dontAdvertise = false;
++ present.uriPath = false;
++ present.chunkResponse = false;
++ present.allowOrigin = false;
++ present.accessCtlMaxAge = false;
++ present.serverOwnsSignals = false;
++ present.expectSigchld = false;
+
+ // Set default values
+- value.dontAdvertise = false;
+- value.uriPath = string("/RPC2");
+- value.chunkResponse = false;
++ value.dontAdvertise = false;
++ value.uriPath = string("/RPC2");
++ value.chunkResponse = false;
++ value.serverOwnsSignals = true;
++ value.expectSigchld = false;
+ }
+
+
+@@ -202,40 +244,40 @@ serverAbyss::constrOpt::constrOpt() {
+ #define DEFINE_OPTION_SETTER(OPTION_NAME, TYPE) \
+ serverAbyss::constrOpt & \
+ serverAbyss::constrOpt::OPTION_NAME(TYPE const& arg) { \
+- this->value.OPTION_NAME = arg; \
+- this->present.OPTION_NAME = true; \
++ this->implP->value.OPTION_NAME = arg; \
++ this->implP->present.OPTION_NAME = true; \
+ return *this; \
+ }
+
+-DEFINE_OPTION_SETTER(registryPtr, xmlrpc_c::registryPtr);
+-DEFINE_OPTION_SETTER(registryP, const registry *);
+-DEFINE_OPTION_SETTER(socketFd, XMLRPC_SOCKET);
+-DEFINE_OPTION_SETTER(portNumber, unsigned int);
+-DEFINE_OPTION_SETTER(logFileName, string);
+-DEFINE_OPTION_SETTER(keepaliveTimeout, unsigned int);
+-DEFINE_OPTION_SETTER(keepaliveMaxConn, unsigned int);
+-DEFINE_OPTION_SETTER(timeout, unsigned int);
+-DEFINE_OPTION_SETTER(dontAdvertise, bool);
+-DEFINE_OPTION_SETTER(uriPath, string);
+-DEFINE_OPTION_SETTER(chunkResponse, bool);
++DEFINE_OPTION_SETTER(registryPtr, xmlrpc_c::registryPtr);
++DEFINE_OPTION_SETTER(registryP, const registry *);
++DEFINE_OPTION_SETTER(socketFd, XMLRPC_SOCKET);
++DEFINE_OPTION_SETTER(portNumber, unsigned int);
++DEFINE_OPTION_SETTER(logFileName, string);
++DEFINE_OPTION_SETTER(keepaliveTimeout, unsigned int);
++DEFINE_OPTION_SETTER(keepaliveMaxConn, unsigned int);
++DEFINE_OPTION_SETTER(timeout, unsigned int);
++DEFINE_OPTION_SETTER(dontAdvertise, bool);
++DEFINE_OPTION_SETTER(uriPath, string);
++DEFINE_OPTION_SETTER(chunkResponse, bool);
++DEFINE_OPTION_SETTER(allowOrigin, string);
++DEFINE_OPTION_SETTER(accessCtlMaxAge, unsigned int);
++DEFINE_OPTION_SETTER(serverOwnsSignals, bool);
++DEFINE_OPTION_SETTER(expectSigchld, bool);
++
++#undef DEFINE_OPTION_SETTER
+
+
++serverAbyss::constrOpt::constrOpt() {
+
+-void
+-serverAbyss::setAdditionalServerParms(constrOpt const& opt) {
++ this->implP = new serverAbyss::constrOpt_impl();
++}
+
+- /* The following ought to be parameters on ServerCreate(), but it
+- looks like plugging them straight into the TServer structure is
+- the only way to set them.
+- */
+
+- if (opt.present.keepaliveTimeout)
+- ServerSetKeepaliveTimeout(&this->cServer, opt.value.keepaliveTimeout);
+- if (opt.present.keepaliveMaxConn)
+- ServerSetKeepaliveMaxConn(&this->cServer, opt.value.keepaliveMaxConn);
+- if (opt.present.timeout)
+- ServerSetTimeout(&this->cServer, opt.value.timeout);
+- ServerSetAdvertise(&this->cServer, !opt.value.dontAdvertise);
++
++serverAbyss::constrOpt::~constrOpt() {
++
++ delete(this->implP);
+ }
+
+
+@@ -280,10 +322,155 @@ createServer(bool const logFileNameGiven,
+
+
+
++struct serverAbyss_impl {
++ registryPtr regPtr;
++ // This just holds a reference to the registry so that it may
++ // get destroyed when the serverAbyss gets destroyed. If the
++ // creator of the serverAbyss is managing lifetime himself,
++ // this is a null pointer. 'registryP' is what you really use
++ // to access the registry.
++
++ const registry * registryP;
++
++ TServer cServer;
++
++ serverAbyss_impl(serverAbyss::constrOpt_impl const& opt,
++ serverAbyss * const serverAbyssP);
++
++ ~serverAbyss_impl();
++
++ void
++ setAdditionalServerParms(serverAbyss::constrOpt_impl const& opt);
++
++ void
++ setHttpReqHandlers(string const& uriPath,
++ bool const chunkResponse,
++ bool const doHttpAccessControl,
++ string const& allowOrigin,
++ bool const accessCtlExpires,
++ unsigned int const accessCtlMaxAge);
++ void
++ run();
++
++ void
++ processCall(std::string const& call,
++ TSession * const abyssSessionP,
++ std::string * const responseP);
++
++ serverAbyss * const serverAbyssP;
++ // The server for which we are the implementation.
++
++ bool expectSigchld;
++ bool serverOwnsSignals;
++};
++
++
++
++static void
++processXmlrpcCall(xmlrpc_env * const envP,
++ void * const arg,
++ const char * const callXml,
++ size_t const callXmlLen,
++ TSession * const abyssSessionP,
++ xmlrpc_mem_block ** const responseXmlPP) {
++/*----------------------------------------------------------------------------
++ This is an XML-RPC XML call processor, as called by the HTTP request
++ handler of the libxmlrpc_server_abyss C library.
++
++ 'callXml'/'callXmlLen' is the XML text of a supposed XML-RPC call.
++ We execute the RPC and return the XML text of the XML-RPC response
++ as *responseXmlPP.
++
++ 'arg' carries the information that tells us how to do that; e.g.
++ what XML-RPC methods are defined.
++-----------------------------------------------------------------------------*/
++ serverAbyss_impl * const implP(
++ static_cast<serverAbyss_impl *>(arg));
++
++ try {
++ string const call(callXml, callXmlLen);
++
++ string response;
++
++ implP->processCall(call, abyssSessionP, &response);
++
++ xmlrpc_mem_block * responseMbP;
++
++ responseMbP = XMLRPC_MEMBLOCK_NEW(char, envP, 0);
++
++ if (!envP->fault_occurred) {
++ XMLRPC_MEMBLOCK_APPEND(char, envP, responseMbP,
++ response.c_str(), response.length());
++
++ *responseXmlPP = responseMbP;
++ }
++ } catch (exception const& e) {
++ xmlrpc_env_set_fault(envP, XMLRPC_INTERNAL_ERROR, e.what());
++ }
++}
++
++
++
+ void
+-serverAbyss::initialize(constrOpt const& opt) {
++serverAbyss_impl::setAdditionalServerParms(
++ serverAbyss::constrOpt_impl const& opt) {
+
+- const registry * registryP;
++ // The following ought to be parameters on ServerCreate().
++
++ if (opt.present.keepaliveTimeout)
++ ServerSetKeepaliveTimeout(&this->cServer, opt.value.keepaliveTimeout);
++ if (opt.present.keepaliveMaxConn)
++ ServerSetKeepaliveMaxConn(&this->cServer, opt.value.keepaliveMaxConn);
++ if (opt.present.timeout)
++ ServerSetTimeout(&this->cServer, opt.value.timeout);
++ ServerSetAdvertise(&this->cServer, !opt.value.dontAdvertise);
++ if (opt.value.expectSigchld)
++ ServerUseSigchld(&this->cServer);
++}
++
++
++
++void
++serverAbyss_impl::setHttpReqHandlers(string const& uriPath,
++ bool const chunkResponse,
++ bool const doHttpAccessControl,
++ string const& allowOrigin,
++ bool const accessCtlExpires,
++ unsigned int const accessCtlMaxAge) {
++/*----------------------------------------------------------------------------
++ This is a constructor helper. Don't assume *this is complete.
++-----------------------------------------------------------------------------*/
++ env_wrap env;
++ xmlrpc_server_abyss_handler_parms parms;
++
++ parms.xml_processor = &processXmlrpcCall;
++ parms.xml_processor_arg = this;
++ parms.xml_processor_max_stack = this->registryP->maxStackSize();
++ parms.uri_path = uriPath.c_str();
++ parms.chunk_response = chunkResponse;
++ parms.allow_origin = doHttpAccessControl ? allowOrigin.c_str() : NULL;
++ parms.access_ctl_expires = accessCtlExpires;
++ parms.access_ctl_max_age = accessCtlMaxAge;
++
++ xmlrpc_server_abyss_set_handler3(
++ &env.env_c, &this->cServer,
++ &parms, XMLRPC_AHPSIZE(access_ctl_max_age));
++
++ if (env.env_c.fault_occurred)
++ throwf("Failed to register the HTTP handler for XML-RPC "
++ "with the underlying Abyss HTTP server. "
++ "xmlrpc_server_abyss_set_handler3() failed with: %s",
++ env.env_c.fault_string);
++
++ xmlrpc_server_abyss_set_default_handler(&this->cServer);
++}
++
++
++
++serverAbyss_impl::serverAbyss_impl(
++ serverAbyss::constrOpt_impl const& opt,
++ serverAbyss * const serverAbyssP) :
++ serverAbyssP(serverAbyssP) {
+
+ if (!opt.present.registryP && !opt.present.registryPtr)
+ throwf("You must specify the 'registryP' or 'registryPtr' option");
+@@ -292,15 +479,21 @@ serverAbyss::initialize(constrOpt const& opt) {
+ "the 'registryPtr' options");
+ else {
+ if (opt.present.registryP)
+- registryP = opt.value.registryP;
++ this->registryP = opt.value.registryP;
+ else {
+- this->registryPtr = opt.value.registryPtr;
+- registryP = this->registryPtr.get();
++ this->regPtr = opt.value.registryPtr;
++ this->registryP = this->regPtr.get();
+ }
+ }
+ if (opt.present.portNumber && opt.present.socketFd)
+ throwf("You can't specify both portNumber and socketFd options");
+
++ this->serverOwnsSignals = opt.value.serverOwnsSignals;
++
++ if (opt.value.serverOwnsSignals && opt.value.expectSigchld)
++ throwf("You can't specify both expectSigchld "
++ "and serverOwnsSignals options");
++
+ DateInit();
+
+ createServer(opt.present.logFileName, opt.value.logFileName,
+@@ -309,18 +502,16 @@ serverAbyss::initialize(constrOpt const& opt) {
+ &this->cServer);
+
+ try {
+- setAdditionalServerParms(opt);
++ this->setAdditionalServerParms(opt);
++
++ this->setHttpReqHandlers(opt.value.uriPath,
++ opt.value.chunkResponse,
++ opt.present.allowOrigin,
++ opt.value.allowOrigin,
++ opt.present.accessCtlMaxAge,
++ opt.value.accessCtlMaxAge);
++
+
+- // chunked response implementation is incomplete. We must
+- // eventually get away from libxmlrpc_server_abyss and
+- // register our own handler with the Abyss server. At that
+- // time, we'll have some place to pass
+- // opt.value.chunkResponse.
+-
+- xmlrpc_c::server_abyss_set_handlers(&this->cServer,
+- registryP,
+- opt.value.uriPath);
+-
+ if (opt.present.portNumber || opt.present.socketFd)
+ ServerInit(&this->cServer);
+ } catch (...) {
+@@ -331,6 +522,94 @@ serverAbyss::initialize(constrOpt const& opt) {
+
+
+
++serverAbyss_impl::~serverAbyss_impl() {
++
++ ServerFree(&this->cServer);
++}
++
++
++
++static void
++setupSignalsAndRunAbyss(TServer * const abyssServerP) {
++
++ /* We do some pretty ugly stuff for an object method: we set signal
++ handlers, which are process-global.
++
++ One example of where this can be hairy is: Caller has a child
++ process unrelated to the Abyss server. That child dies. We
++ get his death of a child signal and Caller never knows.
++
++ We really expect to be the only thing in the process, at least
++ for the time we're running. If you want the Abyss Server
++ to behave more like an object and own the signals yourself,
++ use runOnce() in a loop instead of run().
++ */
++ signalHandlers oldHandlers;
++
++ setupSignalHandlers(&oldHandlers);
++
++ ServerUseSigchld(abyssServerP);
++
++ ServerRun(abyssServerP);
++
++ restoreSignalHandlers(oldHandlers);
++}
++
++
++
++void
++serverAbyss_impl::run() {
++
++ if (this->serverOwnsSignals)
++ setupSignalsAndRunAbyss(&this->cServer);
++ else {
++ if (this->expectSigchld)
++ ServerUseSigchld(&this->cServer);
++
++ ServerRun(&this->cServer);
++ }
++}
++
++
++
++void
++serverAbyss_impl::processCall(string const& call,
++ TSession * const abyssSessionP,
++ string * const responseP) {
++
++ callInfo_serverAbyss const callInfo(this->serverAbyssP, abyssSessionP);
++
++ this->registryP->processCall(call, &callInfo, responseP);
++}
++
++
++
++serverAbyss::shutdown::shutdown(serverAbyss * const serverAbyssP) :
++ serverAbyssP(serverAbyssP) {}
++
++
++
++serverAbyss::shutdown::~shutdown() {}
++
++
++
++void
++serverAbyss::shutdown::doit(string const&,
++ void * const) const {
++
++ this->serverAbyssP->terminate();
++}
++
++
++
++void
++serverAbyss::initialize(constrOpt const& opt) {
++
++ this->implP = new serverAbyss_impl(*opt.implP, this);
++}
++
++
++
+ serverAbyss::serverAbyss(constrOpt const& opt) {
+
+ initialize(opt);
+@@ -376,7 +655,7 @@ serverAbyss::serverAbyss(
+
+ serverAbyss::~serverAbyss() {
+
+- ServerFree(&this->cServer);
++ delete(this->implP);
+ }
+
+
+@@ -384,83 +663,147 @@ serverAbyss::~serverAbyss() {
+ void
+ serverAbyss::run() {
+
+- /* We do some pretty ugly stuff for an object method: we set signal
+- handlers, which are process-global.
++ this->implP->run();
++}
++
+
+- One example of where this can be hairy is: Caller has a child
+- process unrelated to the Abyss server. That child dies. We
+- get his death of a child signal and Caller never knows.
+
+- We really expect to be the only thing in the process, at least
+- for the time we're running. If you want the Abyss Server
+- to behave more like an object and own the signals yourself,
+- use runOnce() in a loop instead of run().
+- */
+- signalHandlers oldHandlers;
++void
++serverAbyss::runOnce() {
+
+- setupSignalHandlers(&oldHandlers);
++ ServerRunOnce(&this->implP->cServer);
++}
+
+- ServerRun(&this->cServer);
+
+- restoreSignalHandlers(oldHandlers);
++
++void
++serverAbyss::runConn(int const socketFd) {
++
++ ServerRunConn(&this->implP->cServer, socketFd);
+ }
+-
+
+
++
++#ifndef WIN32
+ void
+-serverAbyss::runOnce() {
++serverAbyss::sigchld(pid_t const pid) {
++
++ // There's a hole in the design here, because the Abyss server uses
++ // a process-global list of children (so there can't be more than one
++ // Abyss object in the process), so while this is an object method,
++ // it doesn't really refer to the object at all.
+
+- ServerRunOnce(&this->cServer);
++ // We might conceivably fix Abyss some day, then this method would do
++ // what you expect -- affect only its own object. But forking Abyss is
++ // obsolete anyway, so we just don't worry about it.
++
++ ServerHandleSigchld(pid);
+ }
++#endif
+
+
+
+ void
+-serverAbyss::runConn(int const socketFd) {
++serverAbyss::terminate() {
+
+- ServerRunConn(&this->cServer, socketFd);
++ ServerTerminate(&this->implP->cServer);
+ }
+
+
+
++callInfo_abyss::callInfo_abyss(TSession * const abyssSessionP) :
++ abyssSessionP(abyssSessionP) {}
++
++
++
+ void
+-serverAbyss::terminate() {
++processXmlrpcCall2(xmlrpc_env * const envP,
++ void * const arg,
++ const char * const callXml,
++ size_t const callXmlLen,
++ TSession * const abyssSessionP,
++ xmlrpc_mem_block ** const responseXmlPP) {
++/*----------------------------------------------------------------------------
++ This is an XML-RPC XML call processor, as called by the HTTP request
++ handler of the libxmlrpc_server_abyss C library.
++
++ 'callXml'/'callXmlLen' is the XML text of a supposed XML-RPC call.
++ We execute the RPC and return the XML text of the XML-RPC response
++ as *responseXmlPP.
++
++ 'arg' carries the information that tells us how to do that; e.g.
++ what XML-RPC methods are defined.
++-----------------------------------------------------------------------------*/
++ const registry * const registryP(static_cast<registry *>(arg));
++
++ try {
++ string const call(callXml, callXmlLen);
++ callInfo_abyss const callInfo(abyssSessionP);
+
+- ServerTerminate(&this->cServer);
++ string response;
++
++ registryP->processCall(call, &callInfo, &response);
++
++ xmlrpc_mem_block * responseMbP;
++
++ responseMbP = XMLRPC_MEMBLOCK_NEW(char, envP, response.length());
++
++ if (!envP->fault_occurred) {
++ XMLRPC_MEMBLOCK_APPEND(char, envP, responseMbP,
++ response.c_str(), response.length());
++
++ *responseXmlPP = responseMbP;
++ }
++ } catch (exception const& e) {
++ xmlrpc_env_set_fault(envP, XMLRPC_INTERNAL_ERROR, e.what());
++ }
+ }
+
++
++
++static void
++setHandlers(TServer * const serverP,
++ string const& uriPath,
++ registry const& registry) {
++
++ xmlrpc_server_abyss_set_handler2(
++ serverP, uriPath.c_str(),
++ processXmlrpcCall2,
++ const_cast<xmlrpc_c::registry *>(®istry),
++ registry.maxStackSize(),
++ false);
++
++ xmlrpc_server_abyss_set_default_handler(serverP);
++}
++
++
++
+ void
+-server_abyss_set_handlers(TServer * const srvP,
++server_abyss_set_handlers(TServer * const serverP,
+ registry const& registry,
+ string const& uriPath) {
+
+- xmlrpc_server_abyss_set_handlers2(srvP,
+- uriPath.c_str(),
+- registry.c_registry());
++ setHandlers(serverP, uriPath, registry);
+ }
+
+
+
+ void
+-server_abyss_set_handlers(TServer * const srvP,
++server_abyss_set_handlers(TServer * const serverP,
+ const registry * const registryP,
+ string const& uriPath) {
+
+- xmlrpc_server_abyss_set_handlers2(srvP,
+- uriPath.c_str(),
+- registryP->c_registry());
++ setHandlers(serverP, uriPath, *registryP);
+ }
+
+
+
+ void
+-server_abyss_set_handlers(TServer * const srvP,
++server_abyss_set_handlers(TServer * const serverP,
+ registryPtr const registryPtr,
+ string const& uriPath) {
+
+- xmlrpc_server_abyss_set_handlers2(srvP,
+- uriPath.c_str(),
+- registryPtr->c_registry());
++ setHandlers(serverP, uriPath, *registryPtr.get());
+ }
+
+
+diff --git a/libs/xmlrpc-c/src/cpp/server_cgi.cpp b/libs/xmlrpc-c/src/cpp/server_cgi.cpp
+new file mode 100644
+index 0000000..41e5848
+--- /dev/null
++++ b/libs/xmlrpc-c/src/cpp/server_cgi.cpp
+@@ -0,0 +1,354 @@
++/*=============================================================================
++ server_cgi
++===============================================================================
++
++ This is the definition of the xmlrpc_c::server_cgi class. An object of
++ this class is the guts of a CGI-based XML-RPC server. It runs inside
++ a CGI script and gets the XML-RPC call from and delivers the XML-RPC
++ response to the CGI environment.
++
++ By Bryan Henderson 08.09.17.
++
++ Contributed to the public domain by its author.
++=============================================================================*/
++
++#include "xmlrpc_config.h"
++#if MSVCRT
++#ifndef _CRT_SECURE_NO_WARNINGS
++#define _CRT_SECURE_NO_WARNINGS
++#endif
++#include <io.h>
++#include <fcntl.h>
++#endif
++#include <cstdlib> // for getenv
++#include <memory>
++#include <stdio.h>
++
++#include "xmlrpc-c/girerr.hpp"
++using girerr::throwf;
++#include "xmlrpc-c/server_cgi.hpp"
++
++using namespace std;
++
++
++
++namespace {
++
++class httpInfo {
++
++public:
++ string requestMethod;
++ bool contentTypePresent;
++ string contentType;
++ unsigned int contentLength;
++ bool contentLengthPresent;
++ bool authCookiePresent;
++ string authCookie;
++
++ httpInfo() {
++
++ const char * const requestMethodC = getenv("REQUEST_METHOD");
++ const char * const contentTypeC = getenv("CONTENT_TYPE");
++ const char * const contentLengthC = getenv("CONTENT_LENGTH");
++ const char * const authCookieC = getenv("HTTP_COOKIE_AUTH");
++
++ if (requestMethodC)
++ this->requestMethod = string(requestMethodC);
++ else
++ throwf("Invalid CGI environment; environment variable "
++ "REQUEST_METHOD is not set");
++
++ if (contentTypeC) {
++ this->contentTypePresent = true;
++ this->contentType = string(contentTypeC);
++ } else
++ this->contentTypePresent = false;
++
++ if (contentLengthC) {
++ this->contentLengthPresent = true;
++
++ int const lengthAtoi(atoi(string(contentLengthC).c_str()));
++
++ if (lengthAtoi < 0)
++ throwf("Content-length HTTP header value is negative");
++ else if (lengthAtoi == 0)
++ throwf("Content-length HTTP header value is zero");
++ else
++ this->contentLength = lengthAtoi;
++ } else
++ this->contentLengthPresent = false;
++
++ if (authCookieC) {
++ this->authCookie = string(authCookieC);
++ this->authCookiePresent = true;
++ } else
++ this->authCookiePresent = false;
++ }
++};
++
++
++
++class httpError {
++
++public:
++
++ int const code;
++ string const msg;
++
++ httpError(int const code,
++ string const& msg) :
++ code(code), msg(msg) {}
++};
++
++
++} // namespace
++
++
++
++namespace xmlrpc_c {
++
++struct serverCgi_impl {
++ // 'registryP' is what we actually use; 'registryHolder' just holds a
++ // reference to 'registryP' so the registry doesn't disappear while
++ // this server exists. But note that if the creator doesn't supply
++ // a registryPtr, 'registryHolder' is just a placeholder variable and
++ // the creator is responsible for making sure the registry doesn't
++ // go anywhere while the server exists.
++
++ registryPtr registryHolder;
++ const registry * registryP;
++
++ serverCgi_impl(serverCgi::constrOpt const& opt);
++
++ void
++ establishRegistry(serverCgi::constrOpt const& opt);
++
++ void
++ tryToProcessCall();
++};
++
++
++
++
++void
++serverCgi_impl::establishRegistry(serverCgi::constrOpt const& opt) {
++
++ if (!opt.present.registryP && !opt.present.registryPtr)
++ throwf("You must specify the 'registryP' or 'registryPtr' option");
++ else if (opt.present.registryP && opt.present.registryPtr)
++ throwf("You may not specify both the 'registryP' and "
++ "the 'registryPtr' options");
++ else {
++ if (opt.present.registryP)
++ this->registryP = opt.value.registryP;
++ else {
++ this->registryHolder = opt.value.registryPtr;
++ this->registryP = opt.value.registryPtr.get();
++ }
++ }
++}
++
++
++
++serverCgi_impl::serverCgi_impl(serverCgi::constrOpt const& opt) {
++ this->establishRegistry(opt);
++}
++
++
++
++serverCgi::constrOpt::constrOpt() {
++
++ present.registryP = false;
++ present.registryPtr = false;
++}
++
++
++
++#define DEFINE_OPTION_SETTER(OPTION_NAME, TYPE) \
++serverCgi::constrOpt & \
++serverCgi::constrOpt::OPTION_NAME(TYPE const& arg) { \
++ this->value.OPTION_NAME = arg; \
++ this->present.OPTION_NAME = true; \
++ return *this; \
++}
++
++DEFINE_OPTION_SETTER(registryP, const registry *);
++DEFINE_OPTION_SETTER(registryPtr, xmlrpc_c::registryPtr);
++
++#undef DEFINE_OPTION_SETTER
++
++
++
++serverCgi::serverCgi(constrOpt const& opt) {
++
++ this->implP = new serverCgi_impl(opt);
++}
++
++
++
++serverCgi::~serverCgi() {
++
++ delete(this->implP);
++}
++
++
++
++#if MSVCRT
++#define FILEVAR fileP
++#else
++#define FILEVAR
++#endif
++
++static void
++setModeBinary(FILE * const FILEVAR) {
++
++#if MSVCRT
++ /* Fix from Jeff Stewart: NT opens stdin and stdout in text mode
++ by default, badly confusing our length calculations. So we need
++ to set the file handle to binary.
++ */
++ _setmode(_fileno(FILEVAR), _O_BINARY);
++#endif
++}
++
++
++
++static string
++getHttpBody(FILE * const fileP,
++ size_t const length) {
++
++ setModeBinary(fileP);
++ char * const buffer(new char[length]);
++ auto_ptr<char> p(buffer); // To make it go away when we leave
++
++ size_t count;
++
++ count = fread(buffer, sizeof(buffer[0]), length, fileP);
++ if (count < length)
++ throwf("Expected %lu bytes, received %lu",
++ (unsigned long) length, (unsigned long) count);
++
++ return string(buffer, length);
++}
++
++
++
++static void
++writeNormalHttpResp(FILE * const fileP,
++ bool const sendCookie,
++ string const& authCookie,
++ string const& httpBody) {
++
++ setModeBinary(fileP);
++
++ // HTTP headers
++
++ fprintf(fileP, "Status: 200 OK\n");
++
++ if (sendCookie)
++ fprintf(fileP, "Set-Cookie: auth=%s\n", authCookie.c_str());
++
++ fprintf(fileP, "Content-type: text/xml; charset=\"utf-8\"\n");
++ fprintf(fileP, "Content-length: %u\n", (unsigned)httpBody.size());
++ fprintf(fileP, "\n");
++
++ // HTTP body
++
++ fwrite(httpBody.c_str(), sizeof(char), httpBody.size(), fileP);
++}
++
++
++
++void
++processCall2(const registry * const registryP,
++ FILE * const callFileP,
++ unsigned int const callSize,
++ bool const sendCookie,
++ string const& authCookie,
++ FILE * const respFileP) {
++
++ if (callSize > xmlrpc_limit_get(XMLRPC_XML_SIZE_LIMIT_ID))
++ throw(xmlrpc_c::fault(string("XML-RPC call is too large"),
++ fault::CODE_LIMIT_EXCEEDED));
++ else {
++ string const callXml(getHttpBody(callFileP, callSize));
++
++ string responseXml;
++
++ try {
++ registryP->processCall(callXml, &responseXml);
++ } catch (exception const& e) {
++ throw(httpError(500, e.what()));
++ }
++
++ writeNormalHttpResp(respFileP, sendCookie, authCookie, responseXml);
++ }
++}
++
++
++
++
++static void
++sendHttpErrorResp(FILE * const fileP,
++ httpError const& e) {
++
++ setModeBinary(fileP);
++
++ // HTTP headers
++
++ fprintf(fileP, "Status: %d %s\n", e.code, e.msg.c_str());
++ fprintf(fileP, "Content-type: text/html\n");
++ fprintf(fileP, "\n");
++
++ // HTTP body: HTML error message
++
++ fprintf(fileP, "<title>%d %s</title>\n", e.code, e.msg.c_str());
++ fprintf(fileP, "<h1>%d %s</h1>\n", e.code, e.msg.c_str());
++ fprintf(fileP, "<p>The Xmlrpc-c CGI server was unable to process "
++ "your request. It could not process it even enough to generate "
++ "an XML-RPC fault response.</p>\n");
++}
++
++
++
++void
++serverCgi_impl::tryToProcessCall() {
++
++ httpInfo httpInfo;
++
++ if (httpInfo.requestMethod != string("POST"))
++ throw(httpError(405, "Method must be POST"));
++
++ if (!httpInfo.contentTypePresent)
++ throw(httpError(400, "Must have content-type header"));
++
++ if (httpInfo.contentType != string("text/xml"))
++ throw(httpError(400, string("ContentType must be 'text/xml', not '") +
++ httpInfo.contentType + string("'")));
++
++ if (!httpInfo.contentLengthPresent)
++ throw(httpError(411, "Content-length required"));
++
++ processCall2(this->registryP, stdin, httpInfo.contentLength,
++ httpInfo.authCookiePresent, httpInfo.authCookie, stdout);
++}
++
++
++
++void
++serverCgi::processCall() {
++/*----------------------------------------------------------------------------
++ Get the XML-RPC call from Standard Input and environment variables,
++ parse it, find the right method, call it, prepare an XML-RPC
++ response with the result, and write it to Standard Output.
++-----------------------------------------------------------------------------*/
++ try {
++ this->implP->tryToProcessCall();
++ } catch (httpError const e) {
++ sendHttpErrorResp(stdout, e);
++ }
++}
++
++
++
++} // namespace
+diff --git a/libs/xmlrpc-c/src/cpp/server_pstream.cpp b/libs/xmlrpc-c/src/cpp/server_pstream.cpp
+index 86f2cc9..a1b19f8 100644
+--- a/libs/xmlrpc-c/src/cpp/server_pstream.cpp
++++ b/libs/xmlrpc-c/src/cpp/server_pstream.cpp
+@@ -9,24 +9,27 @@
+ is an Xmlrpc-c invention. It is an almost trivial representation of
+ a sequence of packets on a byte stream.
+
+- You can create a pstream server from any file descriptor from which
+- you can read and write a bidirectional character stream. Typically,
+- it's a TCP socket. Such a server talks to one client its entire life.
+-
+- Some day, we'll also have a version that you create from a "listening"
+- socket, which can talk to multiple clients serially (a client connects,
+- does some RPCs, and disconnects).
-
-- if (testsPassed) {
-- cout << "PASSED" << endl;
-- retval = 0;
-- } else {
-- cout << "FAILED" << endl;
-- retval = 1;
-- }
-- return retval;
--}
-diff --git a/libs/xmlrpc-c/src/cpp/curl.cpp b/libs/xmlrpc-c/src/cpp/curl.cpp
-index 6181929..5751385 100644
---- a/libs/xmlrpc-c/src/cpp/curl.cpp
-+++ b/libs/xmlrpc-c/src/cpp/curl.cpp
-@@ -127,27 +127,93 @@ carriageParm_curl0Ptr::operator->() const {
+- By Bryan Henderson 07.05.12.
++ By Bryan Henderson 09.03.22
+
+ Contributed to the public domain by its author.
+ =============================================================================*/
++#include "xmlrpc_config.h"
++#if MSVCRT
++#ifndef _CRT_SECURE_NO_WARNINGS
++#define _CRT_SECURE_NO_WARNINGS
++#endif
++#include <winsock.h>
++typedef int socklen_t;
++#else
++#include <sys/socket.h>
++#endif
++#include <errno.h>
++#include <cstring>
+ #include <memory>
+ #include "xmlrpc-c/girerr.hpp"
+ using girerr::throwf;
+-#include "xmlrpc-c/packetsocket.hpp"
--clientXmlTransport_curl::constrOpt::constrOpt() {
-+struct clientXmlTransport_curl::constrOpt_impl {
+ #include "xmlrpc-c/server_pstream.hpp"
+
+@@ -35,20 +38,52 @@ using namespace std;
+ namespace xmlrpc_c {
+
+
+-serverPstreamConn::constrOpt::constrOpt() {
++struct serverPstream::constrOpt_impl {
+
+ constrOpt_impl();
+
-+ struct {
-+ std::string network_interface;
-+ bool no_ssl_verifypeer;
-+ bool no_ssl_verifyhost;
-+ bool dont_advertise;
-+ std::string user_agent;
-+ std::string ssl_cert;
-+ std::string sslcerttype;
-+ std::string sslcertpasswd;
-+ std::string sslkey;
-+ std::string sslkeytype;
-+ std::string sslkeypasswd;
-+ std::string sslengine;
-+ bool sslengine_default;
-+ xmlrpc_sslversion sslversion;
-+ std::string cainfo;
-+ std::string capath;
-+ std::string randomfile;
-+ std::string egdsocket;
-+ std::string ssl_cipher_list;
-+ unsigned int timeout;
-+ std::string proxy;
-+ unsigned int proxy_auth;
-+ unsigned int proxy_port;
-+ std::string proxy_userpwd;
-+ xmlrpc_httpproxytype proxy_type;
++ struct value {
++ xmlrpc_c::registryPtr registryPtr;
++ const xmlrpc_c::registry * registryP;
++ XMLRPC_SOCKET socketFd;
+ } value;
+ struct {
-+ bool network_interface;
-+ bool no_ssl_verifypeer;
-+ bool no_ssl_verifyhost;
-+ bool dont_advertise;
-+ bool user_agent;
-+ bool ssl_cert;
-+ bool sslcerttype;
-+ bool sslcertpasswd;
-+ bool sslkey;
-+ bool sslkeytype;
-+ bool sslkeypasswd;
-+ bool sslengine;
-+ bool sslengine_default;
-+ bool sslversion;
-+ bool cainfo;
-+ bool capath;
-+ bool randomfile;
-+ bool egdsocket;
-+ bool ssl_cipher_list;
-+ bool timeout;
-+ bool proxy;
-+ bool proxy_auth;
-+ bool proxy_port;
-+ bool proxy_userpwd;
-+ bool proxy_type;
++ bool registryPtr;
++ bool registryP;
++ bool socketFd;
+ } present;
+};
+
-+clientXmlTransport_curl::constrOpt_impl::constrOpt_impl() {
++
++
++serverPstream::constrOpt_impl::constrOpt_impl() {
++
++ this->present.socketFd = false;
++ this->present.registryP = false;
++ this->present.registryPtr = false;
++}
++
++
++
++serverPstream::constrOpt::constrOpt() {
- present.network_interface = false;
- present.no_ssl_verifypeer = false;
- present.no_ssl_verifyhost = false;
-- present.user_agent = false;
-- present.ssl_cert = false;
-- present.sslcerttype = false;
-- present.sslcertpasswd = false;
-- present.sslkey = false;
-- present.sslkeytype = false;
-- present.sslkeypasswd = false;
-- present.sslengine = false;
-+ present.dont_advertise = false;
-+ present.user_agent = false;
-+ present.ssl_cert = false;
-+ present.sslcerttype = false;
-+ present.sslcertpasswd = false;
-+ present.sslkey = false;
-+ present.sslkeytype = false;
-+ present.sslkeypasswd = false;
-+ present.sslengine = false;
- present.sslengine_default = false;
-- present.sslversion = false;
-- present.cainfo = false;
-- present.capath = false;
-- present.randomfile = false;
-- present.egdsocket = false;
-- present.ssl_cipher_list = false;
-- present.timeout = false;
-+ present.sslversion = false;
-+ present.cainfo = false;
-+ present.capath = false;
-+ present.randomfile = false;
-+ present.egdsocket = false;
-+ present.ssl_cipher_list = false;
-+ present.timeout = false;
-+ present.proxy = false;
-+ present.proxy_port = false;
-+ present.proxy_auth = false;
-+ present.proxy_userpwd = false;
-+ present.proxy_type = false;
+- present.socketFd = false;
+- present.registryP = false;
+- present.registryPtr = false;
++ this->implP = new serverPstream::constrOpt_impl();
++}
++
++
++
++serverPstream::constrOpt::~constrOpt() {
++
++ delete(this->implP);
}
-@@ -155,14 +221,15 @@ clientXmlTransport_curl::constrOpt::constrOpt() {
+
#define DEFINE_OPTION_SETTER(OPTION_NAME, TYPE) \
- clientXmlTransport_curl::constrOpt & \
- clientXmlTransport_curl::constrOpt::OPTION_NAME(TYPE const& arg) { \
+-serverPstreamConn::constrOpt & \
+-serverPstreamConn::constrOpt::OPTION_NAME(TYPE const& arg) { \
- this->value.OPTION_NAME = arg; \
- this->present.OPTION_NAME = true; \
++serverPstream::constrOpt & \
++serverPstream::constrOpt::OPTION_NAME(TYPE const& arg) { \
+ this->implP->value.OPTION_NAME = arg; \
+ this->implP->present.OPTION_NAME = true; \
return *this; \
}
- DEFINE_OPTION_SETTER(network_interface, string);
- DEFINE_OPTION_SETTER(no_ssl_verifypeer, bool);
- DEFINE_OPTION_SETTER(no_ssl_verifyhost, bool);
-+DEFINE_OPTION_SETTER(dont_advertise, bool);
- DEFINE_OPTION_SETTER(user_agent, string);
- DEFINE_OPTION_SETTER(ssl_cert, string);
- DEFINE_OPTION_SETTER(sslcerttype, string);
-@@ -179,13 +246,41 @@ DEFINE_OPTION_SETTER(randomfile, string);
- DEFINE_OPTION_SETTER(egdsocket, string);
- DEFINE_OPTION_SETTER(ssl_cipher_list, string);
- DEFINE_OPTION_SETTER(timeout, unsigned int);
-+DEFINE_OPTION_SETTER(proxy, string);
-+DEFINE_OPTION_SETTER(proxy_port, unsigned int);
-+DEFINE_OPTION_SETTER(proxy_auth, unsigned int);
-+DEFINE_OPTION_SETTER(proxy_userpwd, string);
-+DEFINE_OPTION_SETTER(proxy_type, xmlrpc_httpproxytype);
+@@ -60,8 +95,63 @@ DEFINE_OPTION_SETTER(registryPtr, xmlrpc_c::registryPtr);
- #undef DEFINE_OPTION_SETTER
-+clientXmlTransport_curl::constrOpt::constrOpt() {
+
++struct serverPstream_impl {
+
-+ this->implP = new clientXmlTransport_curl::constrOpt_impl();
-+}
++ serverPstream_impl(serverPstream::constrOpt_impl const& opt);
+
++ ~serverPstream_impl();
+
++ void
++ establishRegistry(serverPstream::constrOpt_impl const& opt);
+
-+clientXmlTransport_curl::constrOpt::~constrOpt() {
++ // 'registryP' is what we actually use; 'registryHolder' just holds a
++ // reference to 'registryP' so the registry doesn't disappear while
++ // this server exists. But note that if the creator doesn't supply
++ // a registryPtr, 'registryHolder' is just a placeholder variable and
++ // the creator is responsible for making sure the registry doesn't
++ // go anywhere while the server exists.
+
-+ delete(this->implP);
++ registryPtr registryHolder;
++ const registry * registryP;
++
++ XMLRPC_SOCKET listenSocketFd;
++ // The socket on which we accept connections from clients. This comes
++ // to us from the creator, already bound and in listen mode. That
++ // way, this object doesn't have to know anything about socket
++ // addresses or listen parameters such as the maximum connection
++ // backlog size.
++
++ bool termRequested;
++ // User has requested that the run method return ASAP; i.e. that
++ // the server cease servicing RPCs.
++};
++
++
++
++serverPstream_impl::serverPstream_impl(
++ serverPstream::constrOpt_impl const& opt) {
++
++ this->establishRegistry(opt);
++
++ if (!opt.present.socketFd)
++ throwf("You must provide a 'socketFd' constructor option.");
++
++ this->listenSocketFd = opt.value.socketFd;
++
++ this->termRequested = false;
+}
+
+
+
-+clientXmlTransport_curl::constrOpt::constrOpt(constrOpt& arg) {
++serverPstream_impl::~serverPstream_impl() {
+
-+ this->implP = new constrOpt_impl(*arg.implP);
+}
+
+
+
- #if MUST_BUILD_CURL_CLIENT
-
void
--clientXmlTransport_curl::initialize(constrOpt const& opt) {
-+clientXmlTransport_curl::initialize(constrOpt const& optExt) {
-+ constrOpt_impl const opt(*optExt.implP);
-+
- struct xmlrpc_curl_xportparms transportParms;
+-serverPstreamConn::establishRegistry(constrOpt const& opt) {
++serverPstream_impl::establishRegistry(
++ serverPstream::constrOpt_impl const& opt) {
- transportParms.network_interface = opt.present.network_interface ?
-@@ -194,6 +289,8 @@ clientXmlTransport_curl::initialize(constrOpt const& opt) {
- opt.value.no_ssl_verifypeer : false;
- transportParms.no_ssl_verifyhost = opt.present.no_ssl_verifyhost ?
- opt.value.no_ssl_verifyhost : false;
-+ transportParms.dont_advertise = opt.present.dont_advertise ?
-+ opt.value.dont_advertise : false;
- transportParms.user_agent = opt.present.user_agent ?
- opt.value.user_agent.c_str() : NULL;
- transportParms.ssl_cert = opt.present.ssl_cert ?
-@@ -226,6 +323,16 @@ clientXmlTransport_curl::initialize(constrOpt const& opt) {
- opt.value.ssl_cipher_list.c_str() : NULL;
- transportParms.timeout = opt.present.timeout ?
- opt.value.timeout : 0;
-+ transportParms.proxy = opt.present.proxy ?
-+ opt.value.proxy.c_str() : NULL;
-+ transportParms.proxy_port = opt.present.proxy_port ?
-+ opt.value.proxy_port : 0;
-+ transportParms.proxy_auth = opt.present.proxy_auth ?
-+ opt.value.proxy_auth : XMLRPC_HTTPAUTH_NONE;
-+ transportParms.proxy_userpwd = opt.present.proxy_userpwd ?
-+ opt.value.proxy_userpwd.c_str() : NULL;
-+ transportParms.proxy_type = opt.present.proxy_type ?
-+ opt.value.proxy_type : XMLRPC_HTTPPROXY_HTTP;
+ if (!opt.present.registryP && !opt.present.registryPtr)
+ throwf("You must specify the 'registryP' or 'registryPtr' option");
+@@ -79,109 +169,110 @@ serverPstreamConn::establishRegistry(constrOpt const& opt) {
+ }
- this->c_transportOpsP = &xmlrpc_curl_transport_ops;
-@@ -233,7 +340,7 @@ clientXmlTransport_curl::initialize(constrOpt const& opt) {
++/*-----------------------------------------------------------------------------
++ serverPstream::shutdown is a derived class of registry::shutdown. You give
++ it to the registry object to allow XML-RPC method 'system.shutdown' to
++-----------------------------------------------------------------------------*/
- xmlrpc_curl_transport_ops.create(
- &env.env_c, 0, "", "",
-- &transportParms, XMLRPC_CXPSIZE(timeout),
-+ &transportParms, XMLRPC_CXPSIZE(dont_advertise),
- &this->c_transportP);
+-void
+-serverPstreamConn::establishPacketSocket(constrOpt const& opt) {
++serverPstream::shutdown::shutdown(serverPstream * const serverPstreamP) :
++ serverPstreamP(serverPstreamP) {}
- if (env.env_c.fault_occurred)
-diff --git a/libs/xmlrpc-c/src/cpp/env_wrap.hpp b/libs/xmlrpc-c/src/cpp/env_wrap.hpp
-index 0172f2b..f31cb0e 100644
---- a/libs/xmlrpc-c/src/cpp/env_wrap.hpp
-+++ b/libs/xmlrpc-c/src/cpp/env_wrap.hpp
-@@ -1,11 +1,12 @@
- #ifndef ENV_INT_HPP_INCLUDED
- #define ENV_INT_HPP_INCLUDED
+- if (!opt.present.socketFd)
+- throwf("You must provide a 'socketFd' constructor option.");
+-
+- auto_ptr<packetSocket> packetSocketAP;
-+#include "xmlrpc-c/c_util.h"
- #include "xmlrpc-c/util.h"
+- try {
+- auto_ptr<packetSocket> p(new packetSocket(opt.value.socketFd));
+- packetSocketAP = p;
+- } catch (exception const& e) {
+- throwf("Unable to create packet socket out of file descriptor %d. %s",
+- opt.value.socketFd, e.what());
+- }
+- this->packetSocketP = packetSocketAP.get();
+- packetSocketAP.release();
+-}
- namespace xmlrpc_c {
++serverPstream::shutdown::~shutdown() {}
--class env_wrap {
-+class XMLRPC_DLLEXPORT env_wrap {
- /*----------------------------------------------------------------------------
- A wrapper to assist in using the Xmlrpc-c C libraries in
- Xmlrpc-c C++ code.
-diff --git a/libs/xmlrpc-c/src/cpp/libwww.cpp b/libs/xmlrpc-c/src/cpp/libwww.cpp
-index 1e2998c..3a2e9a6 100644
---- a/libs/xmlrpc-c/src/cpp/libwww.cpp
-+++ b/libs/xmlrpc-c/src/cpp/libwww.cpp
-@@ -141,7 +141,8 @@ clientXmlTransport_libwww::clientXmlTransport_libwww(
+
+-serverPstreamConn::serverPstreamConn(constrOpt const& opt) {
+
+- this->establishRegistry(opt);
++void
++serverPstream::shutdown::doit(string const&,
++ void * const) const {
+
+- this->establishPacketSocket(opt);
++ this->serverPstreamP->terminate();
}
++/*---------------------------------------------------------------------------*/
- #else // MUST_BUILD_LIBWWW_CLIENT
-- clientXmlTransport_libwww::clientXmlTransport_libwww(string, string) {
-+ clientXmlTransport_libwww::clientXmlTransport_libwww(string const,
-+ string const) {
- throw(error("There is no Libwww client XML transport "
- "in this XML-RPC client library"));
-diff --git a/libs/xmlrpc-c/src/cpp/packetsocket.cpp b/libs/xmlrpc-c/src/cpp/packetsocket.cpp
-index c984215..28fd09f 100644
---- a/libs/xmlrpc-c/src/cpp/packetsocket.cpp
-+++ b/libs/xmlrpc-c/src/cpp/packetsocket.cpp
-@@ -37,15 +37,15 @@
- All bytes not part of a control word are literal bytes of a packet.
+-serverPstreamConn::~serverPstreamConn() {
++serverPstream::serverPstream(constrOpt const& opt) {
+
+- delete(this->packetSocketP);
++ this->implP = new serverPstream_impl(*opt.implP);
+ }
+
+
+
+-void
+-processCall(const registry * const registryP,
+- packetPtr const& callPacketP,
+- packetPtr * const responsePacketPP) {
++serverPstream::~serverPstream() {
+
+- string const callXml(reinterpret_cast<char *>(callPacketP->getBytes()),
+- callPacketP->getLength());
++ delete(this->implP);
++}
+
+- string responseXml;
+
+- registryP->processCall(callXml, &responseXml);
+
+- *responsePacketPP = packetPtr(new packet(responseXml.c_str(),
+- responseXml.length()));
++void
++serverPstream::runSerial(volatile const int * const interruptP) {
++
++ while (!this->implP->termRequested && !*interruptP) {
++ struct sockaddr peerAddr;
++ socklen_t size = sizeof(peerAddr);
++ int rc;
++
++ rc = accept(this->implP->listenSocketFd, &peerAddr, &size);
++
++ if (!*interruptP) {
++ if (rc < 0)
++ if (errno == EINTR) {
++ // system call was interrupted, but user doesn't want
++ // to interrupt the server, so just keep trying
++ } else
++ throwf("Failed to accept a connection "
++ "on the listening socket. accept() failed "
++ "with errno %d (%s)", errno, strerror(errno));
++ else {
++ int const acceptedFd = rc;
++
++ serverPstreamConn connectionServer(
++ xmlrpc_c::serverPstreamConn::constrOpt()
++ .socketFd(acceptedFd)
++ .registryP(this->implP->registryP));
++
++ callInfo_serverPstream callInfo(this, peerAddr, size);
++
++ connectionServer.run(&callInfo, interruptP);
++ }
++ }
++ }
+ }
+
+
+
+ void
+-serverPstreamConn::runOnce(volatile const int * const interruptP,
+- bool * const eofP) {
+-/*----------------------------------------------------------------------------
+- Get and execute one RPC from the client.
++serverPstream::runSerial() {
+
+- Unless *interruptP gets set nonzero first.
+------------------------------------------------------------------------------*/
+- bool gotPacket;
+- packetPtr callPacketP;
+-
+- try {
+- this->packetSocketP->readWait(interruptP, eofP, &gotPacket,
+- &callPacketP);
+- } catch (exception const& e) {
+- throwf("Error reading a packet from the packet socket. %s",
+- e.what());
+- }
+- if (gotPacket) {
+- packetPtr responsePacketP;
+- try {
+- processCall(this->registryP, callPacketP, &responsePacketP);
+- } catch (exception const& e) {
+- throwf("Error executing received packet as an XML-RPC RPC. %s",
+- e.what());
+- }
+- try {
+- this->packetSocketP->writeWait(responsePacketP);
+- } catch (exception const& e) {
+- throwf("Failed to write the response to the packet socket. %s",
+- e.what());
+- }
+- }
++ int const interrupt(0); // Never interrupt
++
++ this->runSerial(&interrupt);
+ }
+
-- You can create a packet socket from any file descriptor from which
-- you can read and write a bidirectional character stream. Typically,
-- it's a TCP socket.
-+ You can create a packet socket from a POSIX stream socket or a
-+ Windows emulation of one.
- One use of the NOP control word is to validate that the connection
- is still working. You might send one periodically to detect, for
- example, an unplugged TCP/IP network cable. It's probably better
- to use the TCP keepalive facility for that.
- ============================================================================*/
-+#include "xmlrpc_config.h"
+ void
+-serverPstreamConn::runOnce(bool * const eofP) {
+-/*----------------------------------------------------------------------------
+- Get and execute one RPC from the client.
+------------------------------------------------------------------------------*/
+- int const interrupt(0); // Never interrupt
++serverPstream::terminate() {
- #include <cassert>
- #include <string>
-@@ -54,10 +54,18 @@
- #include <sstream>
- #include <cstdio>
- #include <cstdlib>
--#include <unistd.h>
-+
- #include <errno.h>
- #include <fcntl.h>
--#include <poll.h>
-+#if MSVCRT
-+# include <winsock2.h>
-+# include <io.h>
-+#else
-+# include <unistd.h>
-+# include <poll.h>
-+# include <sys/socket.h>
-+#endif
-+
- #include <sys/types.h>
+- this->runOnce(&interrupt, eofP);
++ this->implP->termRequested = true;
+ }
- #include "c_util.h"
-@@ -67,10 +75,266 @@ using girerr::throwf;
- #include "xmlrpc-c/packetsocket.hpp"
++callInfo_serverPstream::callInfo_serverPstream(
++ serverPstream * const serverP,
++ struct sockaddr const clientAddr,
++ socklen_t const clientAddrSize) :
++
++ serverP(serverP),
++ clientAddr(clientAddr),
++ clientAddrSize(clientAddrSize)
++
++{}
++
++
++
+ } // namespace
+diff --git a/libs/xmlrpc-c/src/cpp/server_pstream_conn.cpp b/libs/xmlrpc-c/src/cpp/server_pstream_conn.cpp
+new file mode 100644
+index 0000000..3598164
+--- /dev/null
++++ b/libs/xmlrpc-c/src/cpp/server_pstream_conn.cpp
+@@ -0,0 +1,364 @@
++/*=============================================================================
++ server_pstream
++===============================================================================
++
++ RPC server based on a very simple byte stream and XML-RPC XML
++ (But this is not an XML-RPC server because it doesn't use HTTP).
++
++ The protocol we use is the "packet socket" protocol, which
++ is an Xmlrpc-c invention. It is an almost trivial representation of
++ a sequence of packets on a byte stream.
++
++ You can create a pstream server from any file descriptor from which
++ you can read and write a bidirectional character stream. Typically,
++ it's a TCP socket. Such a server talks to one client its entire life.
++
++ Some day, we'll also have a version that you create from a "listening"
++ socket, which can talk to multiple clients serially (a client connects,
++ does some RPCs, and disconnects).
++
++ By Bryan Henderson 07.05.12.
++
++ Contributed to the public domain by its author.
++=============================================================================*/
++
++#include <memory>
++
++#include "xmlrpc-c/girerr.hpp"
++using girerr::throwf;
++#include "xmlrpc-c/packetsocket.hpp"
++
++#include "xmlrpc-c/server_pstream.hpp"
++
+using namespace std;
-
- #define ESC 0x1B // ASCII Escape character
- #define ESC_STR "\x1B"
-
-+class XMLRPC_DLLEXPORT socketx {
+
-+public:
-+ socketx(int const sockFd);
++namespace xmlrpc_c {
+
-+ ~socketx();
+
-+ void
-+ waitForReadable() const;
++struct serverPstreamConn::constrOpt_impl {
++
++ constrOpt_impl();
++
++ struct value {
++ xmlrpc_c::registryPtr registryPtr;
++ const xmlrpc_c::registry * registryP;
++ XMLRPC_SOCKET socketFd;
++ } value;
++ struct {
++ bool registryPtr;
++ bool registryP;
++ bool socketFd;
++ } present;
++};
++
+
-+ void
-+ waitForWritable() const;
++
++serverPstreamConn::constrOpt_impl::constrOpt_impl() {
++
++ this->present.socketFd = false;
++ this->present.registryP = false;
++ this->present.registryPtr = false;
++}
++
++
++
++serverPstreamConn::constrOpt::constrOpt() {
++
++ this->implP = new constrOpt_impl();
++}
++
++
++
++serverPstreamConn::constrOpt::~constrOpt() {
++
++ delete(this->implP);
++}
++
++
++
++#define DEFINE_OPTION_SETTER(OPTION_NAME, TYPE) \
++serverPstreamConn::constrOpt & \
++serverPstreamConn::constrOpt::OPTION_NAME(TYPE const& arg) { \
++ this->implP->value.OPTION_NAME = arg; \
++ this->implP->present.OPTION_NAME = true; \
++ return *this; \
++}
++
++DEFINE_OPTION_SETTER(socketFd, XMLRPC_SOCKET);
++DEFINE_OPTION_SETTER(registryP, const registry *);
++DEFINE_OPTION_SETTER(registryPtr, xmlrpc_c::registryPtr);
++
++#undef DEFINE_OPTION_SETTER
++
++
++
++struct serverPstreamConn_impl {
++
++ serverPstreamConn_impl(serverPstreamConn::constrOpt_impl const& opt);
++
++ ~serverPstreamConn_impl();
+
+ void
-+ read(unsigned char * const buffer,
-+ size_t const bufferSize,
-+ bool * const wouldblockP,
-+ size_t * const bytesReadP) const;
++ establishRegistry(serverPstreamConn::constrOpt_impl const& opt);
+
+ void
-+ writeWait(const unsigned char * const data,
-+ size_t const size) const;
-+private:
-+ int fd;
-+ bool fdIsBorrowed;
-+};
++ establishPacketSocket(serverPstreamConn::constrOpt_impl const& opt);
++
++ void
++ processRecdPacket(packetPtr const callPacketP,
++ callInfo * const callInfoP);
+
++ // 'registryP' is what we actually use; 'registryHolder' just holds a
++ // reference to 'registryP' so the registry doesn't disappear while
++ // this server exists. But note that if the creator doesn't supply
++ // a registryPtr, 'registryHolder' is just a placeholder variable and
++ // the creator is responsible for making sure the registry doesn't
++ // go anywhere while the server exists.
+
++ registryPtr registryHolder;
++ const registry * registryP;
+
-+/* Sockets are similar, but not identical between Unix and Windows.
-+ Some Unix socket functions appear to be available on Windows (a
-+ Unix compatibility feature), but work only for file descriptor
-+ numbers < 32, so we don't use those.
-+*/
++ packetSocket * packetSocketP;
++ // The packet socket over which we received RPCs.
++ // This is permanently connected to our fixed client.
++};
+
-+socketx::socketx(int const sockFd) {
-+#if MSVCRT
-+ // We don't have any way to duplicate; we'll just have to borrow.
-+ this->fdIsBorrowed = true;
-+ this->fd = sockFd;
-+ u_long iMode(1); // Nonblocking mode yes
-+ ioctlsocket(this->fd, FIONBIO, &iMode); // Make socket nonblocking
-+#else
-+ this->fdIsBorrowed = false;
+
-+ int dupRc;
+
-+ dupRc = dup(sockFd);
++serverPstreamConn_impl::serverPstreamConn_impl(
++ serverPstreamConn::constrOpt_impl const& opt) {
+
-+ if (dupRc < 0)
-+ throwf("dup() failed. errno=%d (%s)", errno, strerror(errno));
-+ else {
-+ this->fd = dupRc;
-+ fcntl(this->fd, F_SETFL, O_NONBLOCK); // Make socket nonblocking
-+ }
-+#endif
++ this->establishRegistry(opt);
++
++ this->establishPacketSocket(opt);
+}
+
+
+
-+socketx::~socketx() {
++serverPstreamConn_impl::~serverPstreamConn_impl() {
+
-+ if (!this->fdIsBorrowed) {
-+#if MSVCRT
-+ ::closesocket(SOCKET(this->fd));
-+#else
-+ close(this->fd);
-+#endif
++ delete(this->packetSocketP);
++}
++
++
++
++void
++serverPstreamConn_impl::establishRegistry(
++ serverPstreamConn::constrOpt_impl const& opt) {
++
++ if (!opt.present.registryP && !opt.present.registryPtr)
++ throwf("You must specify the 'registryP' or 'registryPtr' option");
++ else if (opt.present.registryP && opt.present.registryPtr)
++ throwf("You may not specify both the 'registryP' and "
++ "the 'registryPtr' options");
++ else {
++ if (opt.present.registryP)
++ this->registryP = opt.value.registryP;
++ else {
++ this->registryHolder = opt.value.registryPtr;
++ this->registryP = opt.value.registryPtr.get();
++ }
+ }
+}
+
+
+
+void
-+socketx::waitForReadable() const {
-+ /* Return when there is something to read from the socket
-+ (an EOF indication counts as something to read). Also
-+ return if there is a signal (handled, of course). Rarely,
-+ it is OK to return when there isn't anything to read.
-+ */
-+#if MSVCRT
-+ // poll() is not available; settle for select().
-+ // Starting in Windows Vista, there is WSApoll()
-+ fd_set rd_set;
-+ FD_ZERO(&rd_set);
-+ FD_SET(this->fd, &rd_set);
++serverPstreamConn_impl::establishPacketSocket(
++ serverPstreamConn::constrOpt_impl const& opt) {
+
-+ select(this->fd + 1, &rd_set, 0, 0, 0);
-+#else
-+ // poll() beats select() because higher file descriptor numbers
-+ // work.
-+ struct pollfd pollfds[1];
++ if (!opt.present.socketFd)
++ throwf("You must provide a 'socketFd' constructor option.");
+
-+ pollfds[0].fd = this->fd;
-+ pollfds[0].events = POLLIN;
++ auto_ptr<packetSocket> packetSocketAP;
+
-+ poll(pollfds, ARRAY_SIZE(pollfds), -1);
-+#endif
++ try {
++ auto_ptr<packetSocket> p(new packetSocket(opt.value.socketFd));
++ packetSocketAP = p;
++ } catch (exception const& e) {
++ throwf("Unable to create packet socket out of file descriptor %d. %s",
++ opt.value.socketFd, e.what());
++ }
++ this->packetSocketP = packetSocketAP.get();
++ packetSocketAP.release();
+}
+
+
+
-+void
-+socketx::waitForWritable() const {
-+ /* Return when socket is able to be written to. */
-+#if MSVCRT
-+ fd_set wr_set;
-+ FD_ZERO(&wr_set);
-+ FD_SET(this->fd, &wr_set);
++serverPstreamConn::serverPstreamConn(constrOpt const& opt) {
+
-+ select(this->fd + 1, 0, &wr_set, 0, 0);
-+#else
-+ struct pollfd pollfds[1];
-+
-+ pollfds[0].fd = this->fd;
-+ pollfds[0].events = POLLOUT;
-+
-+ poll(pollfds, ARRAY_SIZE(pollfds), -1);
-+#endif
++ this->implP = new serverPstreamConn_impl(*opt.implP);
+}
+
+
+
-+static bool
-+wouldBlock() {
-+/*----------------------------------------------------------------------------
-+ The most recently executed system socket function, which we assume failed,
-+ failed because the situation was such that it wanted to block, but the
-+ socket had the nonblocking option.
-+-----------------------------------------------------------------------------*/
-+#if MSVCRT
-+ return (WSAGetLastError() == WSAEWOULDBLOCK ||
-+ WSAGetLastError() == WSAEINPROGRESS);
-+#else
-+ /* EWOULDBLOCK and EAGAIN are normally synonyms, but POSIX allows them
-+ to be separate and allows the OS to return whichever one it wants
-+ for the "would block" condition.
-+ */
-+ return (errno == EWOULDBLOCK || errno == EAGAIN);
-+#endif
++serverPstreamConn::~serverPstreamConn() {
++
++ delete(this->implP);
+}
+
+
+
-+static string
-+lastErrorDesc() {
-+/*----------------------------------------------------------------------------
-+ A description suitable for an error message of why the most recent
-+ failed system socket function failed.
-+-----------------------------------------------------------------------------*/
-+ ostringstream msg;
-+#if MSVCRT
-+ int const lastError = WSAGetLastError();
-+ msg << "winsock error code " << lastError << " "
-+ << "(" << strerror(lastError) << ")";
-+#else
-+ msg << "errno = " << errno << ", (" << strerror(errno);
-+#endif
-+ return msg.str();
-+}
++static void
++processCall(const registry * const registryP,
++ packetPtr const& callPacketP,
++ callInfo * const callInfoP,
++ packetPtr * const responsePacketPP) {
++
++ string const callXml(reinterpret_cast<char *>(callPacketP->getBytes()),
++ callPacketP->getLength());
++
++ string responseXml;
+
++ registryP->processCall(callXml, callInfoP, &responseXml);
++
++ *responsePacketPP = packetPtr(new packet(responseXml.c_str(),
++ responseXml.length()));
++}
+
+
+
+void
-+socketx::read(unsigned char * const buffer,
-+ size_t const bufferSize,
-+ bool * const wouldblockP,
-+ size_t * const bytesReadP) const {
++serverPstreamConn_impl::processRecdPacket(packetPtr const callPacketP,
++ callInfo * const callInfoP) {
+
-+ int rc;
++ packetPtr responsePacketP;
++ try {
++ processCall(this->registryP, callPacketP, callInfoP, &responsePacketP);
++ } catch (exception const& e) {
++ throwf("Error executing received packet as an XML-RPC RPC. %s",
++ e.what());
++ }
++ try {
++ this->packetSocketP->writeWait(responsePacketP);
++ } catch (exception const& e) {
++ throwf("Failed to write the response to the packet socket. %s",
++ e.what());
++ }
++}
+
-+ // We've seen a Windows library whose recv() expects a char * buffer
-+ // (cf POSIX void *), so we cast.
+
-+ rc = recv(this->fd, (char *)buffer, bufferSize, 0);
+
-+ if (rc < 0) {
-+ if (wouldBlock()) {
-+ *wouldblockP = true;
-+ *bytesReadP = 0;
-+ } else
-+ throwf("read() of socket failed with %s", lastErrorDesc().c_str());
-+ } else {
-+ *wouldblockP = false;
-+ *bytesReadP = rc;
++void
++serverPstreamConn::runOnce(callInfo * const callInfoP,
++ volatile const int * const interruptP,
++ bool * const eofP) {
++/*----------------------------------------------------------------------------
++ Get and execute one RPC from the client.
++
++ Unless *interruptP gets set nonzero first.
++-----------------------------------------------------------------------------*/
++ bool gotPacket;
++ packetPtr callPacketP;
++
++ try {
++ this->implP->packetSocketP->readWait(interruptP, eofP, &gotPacket,
++ &callPacketP);
++ } catch (exception const& e) {
++ throwf("Error reading a packet from the packet socket. %s",
++ e.what());
+ }
++ if (gotPacket)
++ this->implP->processRecdPacket(callPacketP, callInfoP);
+}
+
+
+
-+static void
-+writeFd(int const fd,
-+ const unsigned char * const data,
-+ size_t const size,
-+ size_t * const bytesWrittenP) {
++void
++serverPstreamConn::runOnce(volatile const int * const interruptP,
++ bool * const eofP) {
+
-+ size_t totalBytesWritten;
-+ bool full; // File image is "full" for now - won't take any more data
++ this->runOnce(NULL, interruptP, eofP);
++}
+
-+ full = false;
-+ totalBytesWritten = 0;
+
-+ while (totalBytesWritten < size && !full) {
-+ int rc;
+
-+ rc = send(fd, (char*)&data[totalBytesWritten],
-+ size - totalBytesWritten, 0);
++void
++serverPstreamConn::runOnce(bool * const eofP) {
++/*----------------------------------------------------------------------------
++ Get and execute one RPC from the client.
++-----------------------------------------------------------------------------*/
++ int const interrupt(0); // Never interrupt
+
-+ if (rc < 0) {
-+ if (wouldBlock())
-+ full = true;
-+ else
-+ throwf("write() of socket failed with %s",
-+ lastErrorDesc().c_str());
-+ } else if (rc == 0)
-+ throwf("Zero byte short write.");
-+ else {
-+ size_t const bytesWritten(rc);
-+ totalBytesWritten += bytesWritten;
-+ }
-+ }
-+ *bytesWrittenP = totalBytesWritten;
++ this->runOnce(&interrupt, eofP);
+}
+
+
+
+void
-+socketx::writeWait(const unsigned char * const data,
-+ size_t const size) const {
++serverPstreamConn::runOnceNoWait(callInfo * const callInfoP,
++ bool * const eofP,
++ bool * const didOneP) {
+/*----------------------------------------------------------------------------
-+ Write the 'size' bytes at 'data' to the socket. Wait as long
-+ as it takes for the file image to be able to take all the data.
++ Get and execute one RPC from the client, unless none has been
++ received yet. Return as *didOneP whether or not one has been
++ received. Unless didOneP is NULL.
+-----------------------------------------------------------------------------*/
-+ size_t totalBytesWritten;
++ bool gotPacket;
++ packetPtr callPacketP;
+
-+ // We do the first one blind because it will probably just work
-+ // and we don't want to waste the poll() call and buffer arithmetic.
++ try {
++ this->implP->packetSocketP->read(eofP, &gotPacket, &callPacketP);
++ } catch (exception const& e) {
++ throwf("Error reading a packet from the packet socket. %s",
++ e.what());
++ }
++ if (gotPacket)
++ this->implP->processRecdPacket(callPacketP, callInfoP);
+
-+ writeFd(this->fd, data, size, &totalBytesWritten);
++ if (didOneP)
++ *didOneP = gotPacket;
++}
+
-+ while (totalBytesWritten < size) {
-+ this->waitForWritable();
+
-+ size_t bytesWritten;
+
-+ writeFd(this->fd, &data[totalBytesWritten], size - totalBytesWritten,
-+ &bytesWritten);
++void
++serverPstreamConn::runOnceNoWait(bool * const eofP,
++ bool * const didOneP) {
+
-+ totalBytesWritten += bytesWritten;
-+ }
++ this->runOnceNoWait(NULL, eofP, didOneP);
+}
+
+
+
- namespace xmlrpc_c {
-
-
-@@ -86,7 +350,7 @@ packet::initialize(const unsigned char * const data,
- this->bytes = reinterpret_cast<unsigned char *>(malloc(dataLength));
-
- if (this->bytes == NULL)
-- throwf("Can't get storage for a %u-byte packet.", dataLength);
-+ throwf("Can't get storage for a %u-byte packet", (unsigned)dataLength);
-
- this->allocSize = dataLength;
-
-@@ -138,7 +402,7 @@ packet::addData(const unsigned char * const data,
- realloc(this->bytes, neededSize));
-
- if (this->bytes == NULL)
-- throwf("Can't get storage for a %u-byte packet.", neededSize);
-+ throwf("Can't get storage for a %u-byte packet", (unsigned)neededSize);
-
- memcpy(this->bytes + this->length, data, dataLength);
-
-@@ -166,33 +430,83 @@ packetPtr::operator->() const {
-
-
-
--packetSocket::packetSocket(int const sockFd) {
--
-- int dupRc;
--
-- dupRc = dup(sockFd);
--
-- if (dupRc < 0)
-- throwf("dup() failed. errno=%d (%s)", errno, strerror(errno));
-- else {
-- this->sockFd = dupRc;
--
-- this->inEscapeSeq = false;
-- this->inPacket = false;
--
-- this->escAccum.len = 0;
--
-- fcntl(this->sockFd, F_SETFL, O_NONBLOCK);
-+class packetSocket_impl {
-
-- this->eof = false;
-- }
--}
-+public:
-+ packetSocket_impl(int const sockFd);
-
-+ void
-+ writeWait(packetPtr const& packetP) const;
-
-+ void
-+ read(bool * const eofP,
-+ bool * const gotPacketP,
-+ packetPtr * const packetPP);
-
--packetSocket::~packetSocket() {
-+ void
-+ readWait(volatile const int * const interruptP,
-+ bool * const eofP,
-+ bool * const gotPacketP,
-+ packetPtr * const packetPP);
-
-- close(this->sockFd);
-+private:
-+ socketx sock;
-+ // The kernel stream socket we use.
-+ bool eof;
-+ // The packet socket is at end-of-file for reads.
-+ // 'readBuffer' is empty and there won't be any more data to fill
-+ // it because the underlying stream socket is closed.
-+ std::queue<packetPtr> readBuffer;
-+ packetPtr packetAccumP;
-+ // The receive packet we're currently accumulating; it will join
-+ // 'readBuffer' when we've received the whole packet (and we've
-+ // seen the END escape sequence so we know we've received it all).
-+ // If we're not currently accumulating a packet (haven't seen a
-+ // PKT escape sequence), this points to nothing.
-+ bool inEscapeSeq;
-+ // In our trek through the data read from the underlying stream
-+ // socket, we are after an ESC character and before the end of the
-+ // escape sequence. 'escAccum' shows what of the escape sequence
-+ // we've seen so far.
-+ bool inPacket;
-+ // We're now receiving packet data from the underlying stream
-+ // socket. We've seen a complete PKT escape sequence, but have not
-+ // seen a complete END escape sequence since.
-+ struct {
-+ unsigned char bytes[3];
-+ size_t len;
-+ } escAccum;
++void
++serverPstreamConn::runOnceNoWait(bool * const eofP) {
++/*----------------------------------------------------------------------------
++ Get and execute one RPC from the client, unless none has been
++ received yet.
++-----------------------------------------------------------------------------*/
++ this->runOnceNoWait(eofP, NULL);
++}
+
-+ void
-+ takeSomeEscapeSeq(const unsigned char * const buffer,
-+ size_t const length,
-+ size_t * const bytesTakenP);
+
-+ void
-+ takeSomePacket(const unsigned char * const buffer,
-+ size_t const length,
-+ size_t * const bytesTakenP);
+
-+ void
-+ verifyNothingAccumulated();
++void
++serverPstreamConn::run(callInfo * const callInfoP,
++ volatile const int * const interruptP) {
+
-+ void
-+ processBytesRead(const unsigned char * const buffer,
-+ size_t const bytesRead);
++ for (bool clientHasDisconnected = false;
++ !clientHasDisconnected && !*interruptP;)
++ this->runOnce(callInfoP, interruptP, &clientHasDisconnected);
++}
+
-+ void
-+ readFromFile();
-+};
+
+
++void
++serverPstreamConn::run(volatile const int * const interruptP) {
+
-+packetSocket_impl::packetSocket_impl(int const sockFd) :
-+ sock(sockFd) {
++ this->run(NULL, interruptP);
++}
+
-+ this->inEscapeSeq = false;
-+ this->inPacket = false;
-+ this->escAccum.len = 0;
-+ this->eof = false;
- }
++
++
++void
++serverPstreamConn::run() {
++
++ int const interrupt(0); // Never interrupt
++
++ this->run(&interrupt);
++}
++
++
++
++} // namespace
+diff --git a/libs/xmlrpc-c/src/cpp/test/Makefile b/libs/xmlrpc-c/src/cpp/test/Makefile
+index ff6750f..ccde8f5 100644
+--- a/libs/xmlrpc-c/src/cpp/test/Makefile
++++ b/libs/xmlrpc-c/src/cpp/test/Makefile
+@@ -17,20 +17,16 @@ all: $(PROGS)
+
+ XMLRPC_C_CONFIG = $(BLDDIR)/xmlrpc-c-config.test
+
+-CXXFLAGS = $(CXXFLAGS_COMMON) $(CFLAGS_PERSONAL) $(CADD)
+-
+-LDFLAGS += $(shell $(XMLRPC_C_CONFIG) client --ldadd)
++LIBS := $(shell $(XMLRPC_C_CONFIG) client --ldadd)
+
+ ifeq ($(MUST_BUILD_CURL_CLIENT),yes)
+- LDFLAGS += $(shell curl-config --libs)
++ LIBS += $(shell curl-config --libs)
+ endif
+ ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes)
+- LDFLAGS += $(shell libwww-config --libs)
++ LIBS += $(shell libwww-config --libs)
+ endif
+-LDFLAGS += "-lpthread"
+-
+-LDFLAGS += $(LADD)
++LIBS += -lpthread
-@@ -229,106 +543,27 @@ packetSocket::~packetSocket() {
- -----------------------------------------------------------------------------*/
+ INCLUDES = -Isrcdir/include -I$(BLDDIR) -Isrcdir -Isrcdir/lib/util/include
+@@ -42,7 +38,15 @@ Makefile: srcdir
+ include $(SRCDIR)/common.mk
--static void
--writeFd(int const fd,
-- const unsigned char * const data,
-- size_t const size,
-- size_t * const bytesWrittenP) {
--
-- size_t totalBytesWritten;
-- bool full; // File image is "full" for now - won't take any more data
--
-- full = false;
-- totalBytesWritten = 0;
--
-- while (totalBytesWritten < size && !full) {
-- ssize_t rc;
--
-- rc = write(fd, &data[totalBytesWritten], size - totalBytesWritten);
--
-- if (rc < 0) {
-- if (errno == EAGAIN)
-- full = true;
-- else
-- throwf("write() of socket failed with errno %d (%s)",
-- errno, strerror(errno));
-- } else if (rc == 0)
-- throwf("Zero byte short write.");
-- else {
-- size_t const bytesWritten(rc);
-- totalBytesWritten += bytesWritten;
-- }
-- }
-- *bytesWrittenP = totalBytesWritten;
--}
--
--
--
--static void
--writeFdWait(int const fd,
-- const unsigned char * const data,
-- size_t const size) {
--/*----------------------------------------------------------------------------
-- Write the 'size' bytes at 'data' to the file image 'fd'. Wait as long
-- as it takes for the file image to be able to take all the data.
-------------------------------------------------------------------------------*/
-- size_t totalBytesWritten;
--
-- // We do the first one blind because it will probably just work
-- // and we don't want to waste the poll() call and buffer arithmetic.
--
-- writeFd(fd, data, size, &totalBytesWritten);
--
-- while (totalBytesWritten < size) {
-- struct pollfd pollfds[1];
--
-- pollfds[0].fd = fd;
-- pollfds[0].events = POLLOUT;
--
-- poll(pollfds, ARRAY_SIZE(pollfds), -1);
--
-- size_t bytesWritten;
--
-- writeFd(fd, &data[totalBytesWritten], size - totalBytesWritten,
-- &bytesWritten);
--
-- totalBytesWritten += bytesWritten;
-- }
--}
--
--
--
- void
--packetSocket::writeWait(packetPtr const& packetP) const {
-+packetSocket_impl::writeWait(packetPtr const& packetP) const {
- const unsigned char * const packetStart(
- reinterpret_cast<const unsigned char *>(ESC_STR "PKT"));
- const unsigned char * const packetEnd(
- reinterpret_cast<const unsigned char *>(ESC_STR "END"));
+-TEST_OBJS = test.o registry.o server_abyss.o server_pstream.o tools.o
++TEST_OBJS = \
++ test.o \
++ base64.o \
++ registry.o \
++ server_abyss.o \
++ server_pstream.o \
++ tools.o \
++ value.o \
++ xml.o \
-- writeFdWait(this->sockFd, packetStart, 4);
--
-- writeFdWait(this->sockFd, packetP->getBytes(), packetP->getLength());
-+ this->sock.writeWait(packetStart, 4);
+ ifeq ($(MUST_BUILD_CLIENT),yes)
+ TEST_OBJS += testclient.o
+@@ -69,16 +73,17 @@ TEST_LIBS = \
+ ifneq ($(ENABLE_LIBXML2_BACKEND),yes)
+ # We're using the internal Expat XML parser
+ TEST_LIBS += $(LIBXMLRPC_XMLPARSE_A) $(LIBXMLRPC_XMLTOK_A)
+- LDADD_XML =
++ LIB_XML =
++ registry.o: D_INTERNAL_EXPAT=-DINTERNAL_EXPAT
+ else
+- LDADD_XML = $(shell xml2-config --libs)
++ LIB_XML = $(shell xml2-config --libs)
+ endif
-- writeFdWait(this->sockFd, packetEnd, 4);
--}
--
--
--
--static ssize_t
--libc_read(int const fd,
-- void * const buf,
-- size_t const count) {
-+ this->sock.writeWait(packetP->getBytes(), packetP->getLength());
+ test: $(TEST_OBJS) $(TEST_LIBS)
+- $(CXXLD) -o $@ $(LDFLAGS) $(LDADD_XML) $^
++ $(CXXLD) -o $@ $(LDFLAGS) $(LADD) $^ $(LIB_XML) $(LIBS)
-- return read(fd, buf, count);
-+ this->sock.writeWait(packetEnd, 4);
- }
+ %.o:%.cpp
+- $(CXX) -c $(INCLUDES) $(CXXFLAGS) $<
++ $(CXX) -c $(INCLUDES) $(CXXFLAGS_ALL) $(D_INTERNAL_EXPAT) $<
+ # Note the difference between 'check' and 'runtests'. 'check' means to check
+ # our own correctness. 'runtests' means to run the tests that check our
+@@ -104,4 +109,4 @@ distclean: clean distclean-common
+ .PHONY: dep
+ dep: dep-common
+-include Makefile.depend
++include depend.mk
+diff --git a/libs/xmlrpc-c/src/cpp/test/base64.cpp b/libs/xmlrpc-c/src/cpp/test/base64.cpp
+new file mode 100644
+index 0000000..17e4e78
+--- /dev/null
++++ b/libs/xmlrpc-c/src/cpp/test/base64.cpp
+@@ -0,0 +1,54 @@
++#include <string>
++#include <iostream>
++#include <vector>
++
++#include "xmlrpc-c/girerr.hpp"
++using girerr::error;
++#include "xmlrpc-c/base64.hpp"
++
++#include "tools.hpp"
++
++#include "base64.hpp"
++
++using namespace xmlrpc_c;
++using namespace std;
++
++
++
++string
++base64TestSuite::suiteName() {
++ return "base64TestSuite";
++}
++
++
++
++void
++base64TestSuite::runtests(unsigned int const) {
++
++ unsigned char const bytes0Data[] = "This is a test";
++
++ vector<unsigned char> bytes0(&bytes0Data[0],
++ &bytes0Data[sizeof(bytes0Data)]);
++
++ string const base64_0("VGhpcyBpcyBhIHRlc3QA");
++
++ string const expectedBase64_0(base64_0 + "\r\n");
++
++ TEST(base64FromBytes(bytes0) == expectedBase64_0);
++
++ TEST(bytesFromBase64(base64_0) == bytes0);
++
++ unsigned char const bytes1Data[] = {0x80, 0xff};
++
++ vector<unsigned char> bytes1(&bytes1Data[0],
++ &bytes1Data[sizeof(bytes1Data)]);
++
++ string const base64_1("gP8=");
++
++ string const expectedBase64_1(base64_1 + "\r\n");
++
++ TEST(base64FromBytes(bytes1) == expectedBase64_1);
++
++ TEST(bytesFromBase64(base64_1) == bytes1);
++
++}
+diff --git a/libs/xmlrpc-c/src/cpp/test/base64.hpp b/libs/xmlrpc-c/src/cpp/test/base64.hpp
+new file mode 100644
+index 0000000..72ee02d
+--- /dev/null
++++ b/libs/xmlrpc-c/src/cpp/test/base64.hpp
+@@ -0,0 +1,9 @@
++#include "tools.hpp"
++
++class base64TestSuite : public testSuite {
++
++public:
++ virtual std::string suiteName();
++ virtual void runtests(unsigned int const indentation);
++};
++
+diff --git a/libs/xmlrpc-c/src/cpp/test/registry.cpp b/libs/xmlrpc-c/src/cpp/test/registry.cpp
+index 6ca265a..c7e6e42 100644
+--- a/libs/xmlrpc-c/src/cpp/test/registry.cpp
++++ b/libs/xmlrpc-c/src/cpp/test/registry.cpp
+@@ -20,11 +20,19 @@ using namespace xmlrpc_c;
+ using namespace std;
- void
--packetSocket::takeSomeEscapeSeq(const unsigned char * const buffer,
-- size_t const length,
-- size_t * const bytesTakenP) {
-+packetSocket_impl::takeSomeEscapeSeq(const unsigned char * const buffer,
-+ size_t const length,
-+ size_t * const bytesTakenP) {
- /*----------------------------------------------------------------------------
- Take and process some bytes from the incoming stream 'buffer',
- which contains 'length' bytes, assuming they are within an escape
-@@ -378,9 +613,9 @@ packetSocket::takeSomeEscapeSeq(const unsigned char * const buffer,
+-string const xmlPrologue("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n");
- void
--packetSocket::takeSomePacket(const unsigned char * const buffer,
-- size_t const length,
-- size_t * const bytesTakenP) {
-+packetSocket_impl::takeSomePacket(const unsigned char * const buffer,
-+ size_t const length,
-+ size_t * const bytesTakenP) {
++namespace {
++
++static string const
++xmlPrologue("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n");
++
++static string const
++apacheUrl("http://ws.apache.org/xmlrpc/namespaces/extensions");
++
++static string const
++xmlnsApache("xmlns:ex=\"" + apacheUrl + "\"");
- assert(!this->inEscapeSeq);
-@@ -408,7 +643,7 @@ packetSocket::takeSomePacket(const unsigned char * const buffer,
+-namespace {
+ string const noElementFoundXml(
+ xmlPrologue +
+ "<methodResponse>\r\n"
+@@ -41,6 +49,22 @@ string const noElementFoundXml(
+ "</methodResponse>\r\n"
+ );
++string const invalidXMLCall(
++ xmlPrologue +
++ "<methodResponse>\r\n"
++ "<fault>\r\n"
++ "<value><struct>\r\n"
++ "<member><name>faultCode</name>\r\n"
++ "<value><i4>-503</i4></value></member>\r\n"
++ "<member><name>faultString</name>\r\n"
++ "<value><string>Call XML not a proper XML-RPC call. "
++ "Call is not valid XML. XML parsing failed</string></value>"
++ "</member>\r\n"
++ "</struct></value>\r\n"
++ "</fault>\r\n"
++ "</methodResponse>\r\n"
++ );
++
+ string const sampleAddGoodCallXml(
+ xmlPrologue +
+ "<methodCall>\r\n"
+@@ -86,6 +110,24 @@ string const sampleAddBadResponseXml(
+ "</methodResponse>\r\n"
+ );
- void
--packetSocket::verifyNothingAccumulated() {
-+packetSocket_impl::verifyNothingAccumulated() {
- /*----------------------------------------------------------------------------
- Throw an error if there is a partial packet accumulated.
- -----------------------------------------------------------------------------*/
-@@ -419,14 +654,14 @@ packetSocket::verifyNothingAccumulated() {
- if (this->inPacket)
- throwf("Stream socket closed in the middle of a packet "
- "(%u bytes of packet received; no END marker to mark "
-- "end of packet)", this->packetAccumP->getLength());
-+ "end of packet)", (unsigned)this->packetAccumP->getLength());
- }
++string const testCallInfoCallXml(
++ xmlPrologue +
++ "<methodCall>\r\n"
++ "<methodName>test.callinfo</methodName>\r\n"
++ "<params>\r\n"
++ "</params>\r\n"
++ "</methodCall>\r\n"
++ );
++
++string const testCallInfoResponseXml(
++ xmlPrologue +
++ "<methodResponse>\r\n"
++ "<params>\r\n"
++ "<param><value><string>this is a test callInfo</string></value>"
++ "</param>\r\n"
++ "</params>\r\n"
++ "</methodResponse>\r\n"
++ );
+ string const nonexistentMethodCallXml(
+ xmlPrologue +
+@@ -123,31 +165,30 @@ string const nonexistentMethodNoDefResponseXml(
+ "</methodResponse>\r\n"
+ );
+-} // namespace
- void
--packetSocket::processBytesRead(const unsigned char * const buffer,
-- size_t const bytesRead) {
-+packetSocket_impl::processBytesRead(const unsigned char * const buffer,
-+ size_t const bytesRead) {
- unsigned int cursor; // Cursor into buffer[]
- cursor = 0;
-@@ -456,7 +691,7 @@ packetSocket::processBytesRead(const unsigned char * const buffer,
+ string const echoI8ApacheCall(
+ xmlPrologue +
+- "<methodCall>\r\n"
++ "<methodCall " + xmlnsApache + ">\r\n"
+ "<methodName>echo</methodName>\r\n"
+ "<params>\r\n"
+- "<param><value><ex.i8>5</ex.i8></value></param>\r\n"
++ "<param><value><ex:i8>5</ex:i8></value></param>\r\n"
+ "</params>\r\n"
+ "</methodCall>\r\n"
+ );
+ string const echoI8ApacheResponse(
+ xmlPrologue +
+- "<methodResponse>\r\n"
++ "<methodResponse " + xmlnsApache + ">\r\n"
+ "<params>\r\n"
+- "<param><value><ex.i8>5</ex.i8></value></param>\r\n"
++ "<param><value><ex:i8>5</ex:i8></value></param>\r\n"
+ "</params>\r\n"
+ "</methodResponse>\r\n"
+ );
- void
--packetSocket::readFromFile() {
-+packetSocket_impl::readFromFile() {
- /*----------------------------------------------------------------------------
- Read some data from the underlying stream socket. Read as much as is
- available right now, up to 4K. Update 'this' to reflect the data read.
-@@ -473,19 +708,11 @@ packetSocket::readFromFile() {
+ string const echoNilApacheCall(
+ xmlPrologue +
+- "<methodCall>\r\n"
++ "<methodCall " + xmlnsApache + ">\r\n"
+ "<methodName>echo</methodName>\r\n"
+ "<params>\r\n"
+ "<param><value><nil/></value></param>\r\n"
+@@ -157,14 +198,26 @@ string const echoNilApacheCall(
- while (this->readBuffer.empty() && !this->eof && !wouldblock) {
- unsigned char buffer[4096];
-- ssize_t rc;
-+ size_t bytesRead;
+ string const echoNilApacheResponse(
+ xmlPrologue +
+- "<methodResponse>\r\n"
++ "<methodResponse " + xmlnsApache + ">\r\n"
+ "<params>\r\n"
+- "<param><value><ex.nil/></value></param>\r\n"
++ "<param><value><ex:nil/></value></param>\r\n"
+ "</params>\r\n"
+ "</methodResponse>\r\n"
+ );
-- rc = libc_read(this->sockFd, buffer, sizeof(buffer));
--
-- if (rc < 0) {
-- if (errno == EWOULDBLOCK)
-- wouldblock = true;
-- else
-- throwf("read() of socket failed with errno %d (%s)",
-- errno, strerror(errno));
-- } else {
-- size_t const bytesRead(rc);
-+ this->sock.read(buffer, sizeof(buffer), &wouldblock, &bytesRead);
-+ if (!wouldblock) {
- if (bytesRead == 0) {
- this->eof = true;
- this->verifyNothingAccumulated();
-@@ -498,9 +725,9 @@ packetSocket::readFromFile() {
++class callInfo_test : public callInfo {
++
++public:
++ callInfo_test() : data("this is a test callInfo") {}
++
++ callInfo_test(string const& data) : data(data) {};
++
++ string data;
++};
++
++
++
+ class sampleAddMethod : public method {
+ public:
+ sampleAddMethod() {
+@@ -186,6 +239,51 @@ public:
- void
--packetSocket::read(bool * const eofP,
-- bool * const gotPacketP,
-- packetPtr * const packetPP) {
-+packetSocket_impl::read(bool * const eofP,
-+ bool * const gotPacketP,
-+ packetPtr * const packetPP) {
- /*----------------------------------------------------------------------------
- Read one packet from the socket, through the internal packet buffer.
-@@ -535,10 +762,10 @@ packetSocket::read(bool * const eofP,
++class sampleAddMethod2 : public method2 {
++public:
++ sampleAddMethod2() {
++ this->_signature = "i:ii";
++ this->_help = "This method adds two integers together";
++ }
++ void
++ execute(xmlrpc_c::paramList const& paramList,
++ const callInfo * const,
++ value * const retvalP) {
++
++ int const addend(paramList.getInt(0));
++ int const adder(paramList.getInt(1));
++
++ paramList.verifyEnd(2);
++
++ *retvalP = value_int(addend + adder);
++ }
++};
++
++
++
++class testCallInfoMethod : public method2 {
++public:
++ testCallInfoMethod() {
++ this->_signature = "s:";
++ }
++ void
++ execute(xmlrpc_c::paramList const& paramList,
++ const callInfo * const callInfoPtr,
++ value * const retvalP) {
++
++ const callInfo_test * const callInfoP(
++ dynamic_cast<const callInfo_test *>(callInfoPtr));
++
++ TEST(callInfoP != NULL);
++
++ paramList.verifyEnd(0);
++
++ *retvalP = value_string(callInfoP->data);
++ }
++};
++
++
++
+ class nameMethod : public defaultMethod {
+ void
+@@ -213,6 +311,22 @@ public:
- void
--packetSocket::readWait(volatile const int * const interruptP,
-- bool * const eofP,
-- bool * const gotPacketP,
-- packetPtr * const packetPP) {
-+packetSocket_impl::readWait(volatile const int * const interruptP,
-+ bool * const eofP,
-+ bool * const gotPacketP,
-+ packetPtr * const packetPP) {
- bool gotPacket;
- bool eof;
-@@ -547,13 +774,8 @@ packetSocket::readWait(volatile const int * const interruptP,
- eof = false;
- while (!gotPacket && !eof && !*interruptP) {
-- struct pollfd pollfds[1];
--
-- pollfds[0].fd = this->sockFd;
-- pollfds[0].events = POLLIN;
--
-- poll(pollfds, ARRAY_SIZE(pollfds), -1);
++static void
++testEmptyXmlDocCall(xmlrpc_c::registry const& myRegistry) {
++
++ string response;
++ myRegistry.processCall("", &response);
++
++#ifdef INTERNAL_EXPAT
++ TEST(response == noElementFoundXml);
++#else
++ // This is what we get with libxml2
++ TEST(response == invalidXMLCall);
++#endif
++}
++
++
++
+ class registryRegMethodTestSuite : public testSuite {
-+ this->sock.waitForReadable();
- this->read(&eof, &gotPacket, packetPP);
+ public:
+@@ -227,11 +341,7 @@ public:
+ xmlrpc_c::methodPtr(new sampleAddMethod));
+
+ myRegistry.disableIntrospection();
+- {
+- string response;
+- myRegistry.processCall("", &response);
+- TEST(response == noElementFoundXml);
+- }
++ testEmptyXmlDocCall(myRegistry);
+ {
+ string response;
+ myRegistry.processCall(sampleAddGoodCallXml, &response);
+@@ -242,6 +352,12 @@ public:
+ myRegistry.processCall(sampleAddBadCallXml, &response);
+ TEST(response == sampleAddBadResponseXml);
+ }
++ {
++ string response;
++ callInfo const callInfo;
++ myRegistry.processCall(sampleAddBadCallXml, &callInfo, &response);
++ TEST(response == sampleAddBadResponseXml);
++ }
}
+ };
-@@ -563,6 +785,49 @@ packetSocket::readWait(volatile const int * const interruptP,
+@@ -284,6 +400,93 @@ public:
-+packetSocket::packetSocket(int const sockFd) {
++class method2TestSuite : public testSuite {
+
-+ this->implP = new packetSocket_impl(sockFd);
-+}
++public:
++ virtual string suiteName() {
++ return "method2TestSuite";
++ }
++ virtual void runtests(unsigned int const) {
+
++ xmlrpc_c::registry myRegistry;
++
++ myRegistry.addMethod("sample.add",
++ xmlrpc_c::methodPtr(new sampleAddMethod2));
++
++ myRegistry.addMethod("test.callinfo",
++ xmlrpc_c::methodPtr(new testCallInfoMethod));
++
++ {
++ string response;
++ myRegistry.processCall(sampleAddGoodCallXml, &response);
++ TEST(response == sampleAddGoodResponseXml);
++ }
++ {
++ string response;
++ myRegistry.processCall(sampleAddBadCallXml, &response);
++ TEST(response == sampleAddBadResponseXml);
++ }
++ {
++ string response;
++ callInfo_test const callInfo;
++ myRegistry.processCall(testCallInfoCallXml, &callInfo, &response);
++ TEST(response == testCallInfoResponseXml);
++ }
++ }
++};
+
+
-+packetSocket::~packetSocket() {
+
-+ delete(this->implP);
-+}
++class dialectTestSuite : public testSuite {
+
++public:
++ virtual string suiteName() {
++ return "dialectTestSuite";
++ }
++ virtual void runtests(unsigned int const) {
+
++ registry myRegistry;
++ string response;
++
++ myRegistry.addMethod("sample.add", methodPtr(new sampleAddMethod));
++ myRegistry.addMethod("echo", methodPtr(new echoMethod));
+
-+void
-+packetSocket::writeWait(packetPtr const& packetP) const {
++ myRegistry.setDialect(xmlrpc_dialect_i8);
+
-+ implP->writeWait(packetP);
-+}
++ myRegistry.setDialect(xmlrpc_dialect_apache);
+
++ myRegistry.processCall(echoI8ApacheCall, &response);
+
++ TEST(response == echoI8ApacheResponse);
+
-+void
-+packetSocket::read(bool * const eofP,
-+ bool * const gotPacketP,
-+ packetPtr * const packetPP) {
++ myRegistry.processCall(echoNilApacheCall, &response);
+
-+ this->implP->read(eofP, gotPacketP, packetPP);
-+}
++ TEST(response == echoNilApacheResponse);
+
++ EXPECT_ERROR( // invalid dialect
++ myRegistry.setDialect(static_cast<xmlrpc_dialect>(300));
++ );
++ }
++};
+
+
-+void
-+packetSocket::readWait(volatile const int * const interruptP,
-+ bool * const eofP,
-+ bool * const gotPacketP,
-+ packetPtr * const packetPP) {
+
-+ this->implP->readWait(interruptP, eofP, gotPacketP, packetPP);
-+}
++class testShutdown : public xmlrpc_c::registry::shutdown {
++/*----------------------------------------------------------------------------
++ This class is logically local to
++ registryShutdownTestSuite::runtests(), but if we declare it that
++ way, gcc 2.95.3 fails with some bogus messages about undefined
++ references from random functions when we do that.
++-----------------------------------------------------------------------------*/
++public:
++ void doit(string const&,
++ void * const) const {
++
++ }
++};
+
+
+
- void
- packetSocket::readWait(volatile const int * const interruptP,
- bool * const eofP,
-@@ -570,7 +835,7 @@ packetSocket::readWait(volatile const int * const interruptP,
+ class registryShutdownTestSuite : public testSuite {
- bool gotPacket;
+ public:
+@@ -294,15 +497,7 @@ public:
-- this->readWait(interruptP, eofP, &gotPacket, packetPP);
-+ this->implP->readWait(interruptP, eofP, &gotPacket, packetPP);
+ xmlrpc_c::registry myRegistry;
- if (!gotPacket)
- throwf("Packet read was interrupted");
-diff --git a/libs/xmlrpc-c/src/cpp/pstream.cpp b/libs/xmlrpc-c/src/cpp/pstream.cpp
-index 6a75160..fd2a31d 100644
---- a/libs/xmlrpc-c/src/cpp/pstream.cpp
-+++ b/libs/xmlrpc-c/src/cpp/pstream.cpp
-@@ -37,9 +37,24 @@ using namespace std;
- namespace xmlrpc_c {
+- class myshutdown : public xmlrpc_c::registry::shutdown {
+- public:
+- void doit(string const&,
+- void * const) const {
+-
+- }
+- };
+-
+- myshutdown shutdown;
++ testShutdown shutdown;
+
+ myRegistry.setShutdown(&shutdown);
+ }
+@@ -310,6 +505,10 @@ public:
--clientXmlTransport_pstream::constrOpt::constrOpt() {
-- present.fd = false;
-+struct clientXmlTransport_pstream::constrOpt_impl {
-+
-+ constrOpt_impl();
-+
-+ struct {
-+ int fd;
-+ } value;
-+ struct {
-+ bool fd;
-+ } present;
-+};
++} // unnamed namespace
+
+
+
-+clientXmlTransport_pstream::constrOpt_impl::constrOpt_impl() {
+ string
+ registryTestSuite::suiteName() {
+ return "registryTestSuite";
+@@ -327,32 +526,19 @@ registryTestSuite::runtests(unsigned int const indentation) {
+ }
+
+ registryRegMethodTestSuite().run(indentation+1);
+
-+ this->present.fd = false;
- }
+ registryDefaultMethodTestSuite().run(indentation+1);
+- registry myRegistry;
+-
+- myRegistry.addMethod("sample.add", methodPtr(new sampleAddMethod));
+- myRegistry.addMethod("echo", methodPtr(new echoMethod));
++ method2TestSuite().run(indentation+1);
-@@ -47,8 +62,8 @@ clientXmlTransport_pstream::constrOpt::constrOpt() {
- #define DEFINE_OPTION_SETTER(OPTION_NAME, TYPE) \
- clientXmlTransport_pstream::constrOpt & \
- clientXmlTransport_pstream::constrOpt::OPTION_NAME(TYPE const& arg) { \
-- this->value.OPTION_NAME = arg; \
-- this->present.OPTION_NAME = true; \
-+ this->implP->value.OPTION_NAME = arg; \
-+ this->implP->present.OPTION_NAME = true; \
- return *this; \
- }
+- string response;
++ registry myRegistry;
-@@ -58,7 +73,31 @@ DEFINE_OPTION_SETTER(fd, xmlrpc_socket);
+ myRegistry.disableIntrospection();
+- myRegistry.setDialect(xmlrpc_dialect_i8);
+-
+- myRegistry.setDialect(xmlrpc_dialect_apache);
++ dialectTestSuite().run(indentation+1);
+
+ registryShutdownTestSuite().run(indentation+1);
+
+- myRegistry.processCall(echoI8ApacheCall, &response);
+-
+- TEST(response == echoI8ApacheResponse);
+-
+- myRegistry.processCall(echoNilApacheCall, &response);
+-
+- TEST(response == echoNilApacheResponse);
++ TEST(myRegistry.maxStackSize() >= 256);
+
+- EXPECT_ERROR( // invalid dialect
+- myRegistry.setDialect(static_cast<xmlrpc_dialect>(300));
+- );
+ }
+diff --git a/libs/xmlrpc-c/src/cpp/test/server_abyss.cpp b/libs/xmlrpc-c/src/cpp/test/server_abyss.cpp
+index 4b236ef..2b50688 100644
+--- a/libs/xmlrpc-c/src/cpp/test/server_abyss.cpp
++++ b/libs/xmlrpc-c/src/cpp/test/server_abyss.cpp
+@@ -10,6 +10,8 @@
+ #include <vector>
+ #include <sstream>
+ #include <memory>
++#include <cstring>
++#include <cstdlib>
+ #include <time.h>
+ #ifdef WIN32
+ #include <winsock.h>
+@@ -17,6 +19,7 @@
+ #include <sys/unistd.h>
+ #include <sys/socket.h>
+ #include <arpa/inet.h>
++ #include <netinet/in.h>
+ #endif
+
+ #include "xmlrpc-c/girerr.hpp"
+@@ -34,6 +37,9 @@ using namespace xmlrpc_c;
+ using namespace std;
--clientXmlTransport_pstream::clientXmlTransport_pstream(constrOpt const& opt) {
-+clientXmlTransport_pstream::constrOpt::constrOpt() {
-+
-+ this->implP = new clientXmlTransport_pstream::constrOpt_impl();
-+}
-+
-+
-+
-+clientXmlTransport_pstream::constrOpt::~constrOpt() {
-+
-+ delete(this->implP);
-+}
-+
-+
-+
-+clientXmlTransport_pstream::constrOpt::constrOpt(constrOpt& arg) {
-+
-+ this->implP = new clientXmlTransport_pstream::constrOpt_impl(*arg.implP);
-+}
-+
-+
+
-+clientXmlTransport_pstream::clientXmlTransport_pstream(
-+ constrOpt const& optExt) {
++namespace {
+
-+ constrOpt_impl const opt(*optExt.implP);
+ static void
+ closesock(int const fd) {
+ #ifdef WIN32
+@@ -75,7 +81,7 @@ public:
+ closesock(this->fd);
+ }
+
+- int fd;
++ XMLRPC_SOCKET fd;
+ };
- if (!opt.present.fd)
- throwf("You must provide a 'fd' constructor option.");
-diff --git a/libs/xmlrpc-c/src/cpp/registry.cpp b/libs/xmlrpc-c/src/cpp/registry.cpp
-index 26bfa95..9b3bc3e 100644
---- a/libs/xmlrpc-c/src/cpp/registry.cpp
-+++ b/libs/xmlrpc-c/src/cpp/registry.cpp
-@@ -59,6 +59,24 @@ methodPtr::operator->() const {
+@@ -259,6 +265,10 @@ public:
+ .timeout(20)
+ .dontAdvertise(true)
+ .uriPath("/xmlrpc")
++ .chunkResponse(true)
++ .allowOrigin("*")
++ .serverOwnsSignals(false)
++ .expectSigchld(true)
+ );
+
+ }
+@@ -274,6 +284,54 @@ public:
-+method2::method2() {}
-+
+
++class testCallInfoMethod : public method2 {
++public:
++ void
++ execute(paramList const& paramList,
++ const callInfo * const callInfoPtr,
++ value * const retvalP) {
+
++ const callInfo_serverAbyss * const callInfoP(
++ dynamic_cast<const callInfo_serverAbyss *>(callInfoPtr));
+
-+method2::~method2() {}
++ TEST(callInfoP != NULL);
++
++ paramList.verifyEnd(0);
+
++ TEST(callInfoP->serverAbyssP != NULL);
++ TEST(callInfoP->abyssSessionP != NULL);
++
++ *retvalP = value_nil();
++ }
++};
+
-+void
-+method2::execute(xmlrpc_c::paramList const& paramList,
-+ xmlrpc_c::value * const resultP) {
+
-+ callInfo const nullCallInfo;
+
-+ execute(paramList, &nullCallInfo, resultP);
-+}
++class callInfoTestSuite : public testSuite {
+
++public:
++ virtual string suiteName() {
++ return "callInfoTestSuite";
++ }
++ virtual void runtests(unsigned int const) {
++
++ registry myRegistry;
++
++ myRegistry.addMethod("sample.add", methodPtr(new testCallInfoMethod));
+
++ serverAbyss abyssServer(serverAbyss::constrOpt()
++ .registryP(&myRegistry)
++ .portNumber(12345)
++ );
++ }
++};
+
- defaultMethod::~defaultMethod() {}
-
-
-@@ -90,7 +108,32 @@ defaultMethodPtr::get() const {
-
-
-
--registry::registry() {
-+struct registry_impl {
+
-+ xmlrpc_registry * c_registryP;
-+ // Pointer to the C registry object we use to implement this
-+ // object.
+
-+ std::list<xmlrpc_c::methodPtr> methodList;
-+ // This is a list of all the method objects (actually, pointers
-+ // to them). But since the real registry is the C registry object,
-+ // all this list is for is to maintain references to the objects
-+ // to which the C registry points so that they continue to exist.
++} // unnamed namespace
+
-+ xmlrpc_c::defaultMethodPtr defaultMethodP;
-+ // The real identifier of the default method is the C registry
-+ // object; this member exists only to maintain a reference to the
-+ // object to which the C registry points so that it will continue
-+ // to exist.
+
-+ registry_impl();
+
-+ ~registry_impl();
-+};
+ string
+ serverAbyssTestSuite::suiteName() {
+ return "serverAbyssTestSuite";
+@@ -289,4 +347,5 @@ serverAbyssTestSuite::runtests(unsigned int const indentation) {
+
+ createTestSuite().run(indentation+1);
+
++ callInfoTestSuite().run(indentation+1);
+ }
+diff --git a/libs/xmlrpc-c/src/cpp/test/server_pstream.cpp b/libs/xmlrpc-c/src/cpp/test/server_pstream.cpp
+index 83b3e88..1d93273 100644
+--- a/libs/xmlrpc-c/src/cpp/test/server_pstream.cpp
++++ b/libs/xmlrpc-c/src/cpp/test/server_pstream.cpp
+@@ -4,16 +4,37 @@
+ Test the pstream server C++ facilities of XML-RPC for C/C++.
+
+ =============================================================================*/
+-#include <unistd.h>
+-#include <sys/socket.h>
+-#include <arpa/inet.h>
+
++#include "xmlrpc_config.h"
+
++#if MSVCRT
++ #include <winsock2.h>
++ #include <io.h>
++#else
++ #include <unistd.h>
++ #include <sys/socket.h>
++ #include <arpa/inet.h>
++#endif
+
-+registry_impl::registry_impl() {
-
- env_wrap env;
-
-@@ -101,12 +144,25 @@ registry::registry() {
-
-
-
--registry::~registry(void) {
-+registry_impl::~registry_impl() {
+ #include <errno.h>
+ #include <string>
++#include <cstring>
+ #include <fcntl.h>
- xmlrpc_registry_free(this->c_registryP);
- }
++#include "xmlrpc-c/config.h"
++
++#if MSVCRT
++ int
++ xmlrpc_win32_socketpair(int const domain,
++ int const type,
++ int const protocol,
++ SOCKET socks[2]);
++#endif
++
+ #include "xmlrpc-c/girerr.hpp"
+ using girerr::error;
+ using girerr::throwf;
++#include "xmlrpc-c/sleep_int.h"
+ #include "xmlrpc-c/base.hpp"
+ #include "xmlrpc-c/registry.hpp"
+ #include "xmlrpc-c/server_pstream.hpp"
+@@ -25,6 +46,41 @@ using namespace xmlrpc_c;
+ using namespace std;
-+registry::registry() {
++namespace {
+
-+ this->implP = new registry_impl();
++static void
++setNonBlocking(XMLRPC_SOCKET const socket) {
++
++#if MSVCRT
++ u_long iMode = 1;
++ ioctlsocket(socket, FIONBIO, &iMode);
++#else
++ fcntl(socket, F_SETFL, O_NONBLOCK);
++#endif
+}
+
+
+
-+registry::~registry(void) {
++#define ESC_STR "\x1B"
+
-+ delete(this->implP);
-+}
+
++static string const
++xmlPrologue("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n");
+
-
- registryPtr::registryPtr() {}
-
-@@ -173,7 +229,8 @@ pListFromXmlrpcArray(xmlrpc_value * const arrayP) {
- static xmlrpc_value *
- c_executeMethod(xmlrpc_env * const envP,
- xmlrpc_value * const paramArrayP,
-- void * const methodPtr) {
-+ void * const methodPtr,
-+ void * const callInfoPtr) {
- /*----------------------------------------------------------------------------
- This is a function designed to be called via a C registry to
- execute an XML-RPC method, but use a C++ method object to do the
-@@ -188,18 +245,25 @@ c_executeMethod(xmlrpc_env * const envP,
- encounter in processing the result it returns, and turn it into an
- XML-RPC method failure. This will cause a leak if the execute()
- method actually created a result, since it will not get destroyed.
++static string const
++packetStart(ESC_STR "PKT");
++
++static string const
++packetEnd(ESC_STR "END");
++
++
++class callInfo_test : public callInfo {
++public:
++ callInfo_test() : info("this is a test") {}
++ string const info;
++};
+
-+ This function is of type 'xmlrpc_method2'.
- -----------------------------------------------------------------------------*/
-- xmlrpc_c::method * const methodP =
-- static_cast<xmlrpc_c::method *>(methodPtr);
-- xmlrpc_c::paramList const paramList(pListFromXmlrpcArray(paramArrayP));
-+ method * const methodP(static_cast<method *>(methodPtr));
-+ paramList const paramList(pListFromXmlrpcArray(paramArrayP));
-+ callInfo * const callInfoP(static_cast<callInfo *>(callInfoPtr));
-
- xmlrpc_value * retval;
-+ retval = NULL; // silence used-before-set warning
-
- try {
-- xmlrpc_c::value result;
-+ value result;
-
- try {
-- methodP->execute(paramList, &result);
-+ method2 * const method2P(dynamic_cast<method2 *>(methodP));
-+ if (method2P)
-+ method2P->execute(paramList, callInfoP, &result);
-+ else
-+ methodP->execute(paramList, &result);
- } catch (xmlrpc_c::fault const& fault) {
- xmlrpc_env_set_fault(envP, fault.getCode(),
- fault.getDescription().c_str());
-@@ -256,6 +320,7 @@ c_executeDefaultMethod(xmlrpc_env * const envP,
- paramList const paramList(pListFromXmlrpcArray(paramArrayP));
-
- xmlrpc_value * retval;
-+ retval = NULL; // silence used-before-set warning
-
- try {
- xmlrpc_c::value result;
-@@ -296,15 +361,22 @@ void
- registry::addMethod(string const name,
- methodPtr const methodP) {
-
-- this->methodList.push_back(methodP);
-+ this->implP->methodList.push_back(methodP);
-
-+ struct xmlrpc_method_info3 methodInfo;
- env_wrap env;
+
-+ methodInfo.methodName = name.c_str();
-+ methodInfo.methodFunction = &c_executeMethod;
-+ methodInfo.serverInfo = methodP.get();
-+ methodInfo.stackSize = 0;
-+ string const signatureString(methodP->signature());
-+ methodInfo.signatureString = signatureString.c_str();
-+ string const help(methodP->help());
-+ methodInfo.help = help.c_str();
-
-- xmlrpc_registry_add_method_w_doc(
-- &env.env_c, this->c_registryP, NULL,
-- name.c_str(), &c_executeMethod,
-- (void*) methodP.get(),
-- methodP->signature().c_str(), methodP->help().c_str());
-+ xmlrpc_registry_add_method3(&env.env_c, this->implP->c_registryP,
-+ &methodInfo);
-
- throwIfError(env);
- }
-@@ -314,12 +386,12 @@ registry::addMethod(string const name,
- void
- registry::setDefaultMethod(defaultMethodPtr const methodP) {
-
-- this->defaultMethodP = methodP;
-+ this->implP->defaultMethodP = methodP;
-
- env_wrap env;
-
- xmlrpc_registry_set_default_method(
-- &env.env_c, this->c_registryP,
-+ &env.env_c, this->implP->c_registryP,
- &c_executeDefaultMethod, (void*) methodP.get());
-
- throwIfError(env);
-@@ -330,7 +402,7 @@ registry::setDefaultMethod(defaultMethodPtr const methodP) {
- void
- registry::disableIntrospection() {
-
-- xmlrpc_registry_disable_introspection(this->c_registryP);
-+ xmlrpc_registry_disable_introspection(this->implP->c_registryP);
- }
-
-
-@@ -362,7 +434,7 @@ registry::setShutdown(const registry::shutdown * const shutdownP) {
-
- void * const context(const_cast<registry::shutdown *>(shutdownP));
-
-- xmlrpc_registry_set_shutdown(this->c_registryP,
-+ xmlrpc_registry_set_shutdown(this->implP->c_registryP,
- &shutdownServer,
- context);
- }
-@@ -374,9 +446,49 @@ registry::setDialect(xmlrpc_dialect const dialect) {
- env_wrap env;
+ class sampleAddMethod : public method {
+ public:
+@@ -45,51 +101,542 @@ public:
+ }
+ };
-- xmlrpc_registry_set_dialect(&env.env_c, this->c_registryP, dialect);
-+ xmlrpc_registry_set_dialect(&env.env_c, this->implP->c_registryP, dialect);
++string const sampleAddCallXml(
++ xmlPrologue +
++ "<methodCall>\r\n"
++ "<methodName>sample.add</methodName>\r\n"
++ "<params>\r\n"
++ "<param><value><i4>5</i4></value></param>\r\n"
++ "<param><value><i4>7</i4></value></param>\r\n"
++ "</params>\r\n"
++ "</methodCall>\r\n"
++ );
++
++string const sampleAddResponseXml(
++ xmlPrologue +
++ "<methodResponse>\r\n"
++ "<params>\r\n"
++ "<param><value><i4>12</i4></value></param>\r\n"
++ "</params>\r\n"
++ "</methodResponse>\r\n"
++ );
+
-+ throwIfError(env);
-+}
+
++class testCallInfoMethod : public method2 {
+
++public:
++ virtual void
++ execute(paramList const& paramList,
++ const callInfo * const callInfoPtr,
++ value * const retvalP) {
+
-+void
-+registry::processCall(string const& callXml,
-+ const callInfo * const callInfoP,
-+ string * const responseXmlP) const {
-+/*----------------------------------------------------------------------------
-+ Process an XML-RPC call whose XML is 'callXml'.
++ const callInfo_test * const callInfoP(
++ dynamic_cast<const callInfo_test *>(callInfoPtr));
+
-+ Return the response XML as *responseXmlP.
++ TEST(callInfoP != NULL);
++
++ paramList.verifyEnd(0);
+
-+ If we are unable to execute the call, we throw an error. But if
-+ the call executes and the method merely fails in an XML-RPC sense, we
-+ don't. In that case, *responseXmlP indicates the failure.
-+-----------------------------------------------------------------------------*/
-+ env_wrap env;
-+ xmlrpc_mem_block * response;
++ TEST(callInfoP->info == string("this is a test"));
++
++ *retvalP = value_nil();
++ }
++};
+
-+ // For the pure C++ version, this will have to parse 'callXml'
-+ // into a method name and parameters, look up the method name in
-+ // the registry, call the method's execute() method, then marshall
-+ // the result into XML and return it as *responseXmlP. It will
-+ // also have to execute system methods (e.g. introspection)
-+ // itself. This will be more or less like what
-+ // xmlrpc_registry_process_call() does.
++string const testCallInfoCallXml(
++ xmlPrologue +
++ "<methodCall>\r\n"
++ "<methodName>test.callinfo</methodName>\r\n"
++ "<params>\r\n"
++ "</params>\r\n"
++ "</methodCall>\r\n"
++ );
+
-+ xmlrpc_registry_process_call2(
-+ &env.env_c, this->implP->c_registryP,
-+ callXml.c_str(), callXml.length(),
-+ const_cast<callInfo *>(callInfoP),
-+ &response);
-
- throwIfError(env);
++string const testCallInfoResponseXml(
++ xmlPrologue +
++ "<methodResponse>\r\n"
++ "<params>\r\n"
++ "<param><value><nil/></value>"
++ "</param>\r\n"
++ "</params>\r\n"
++ "</methodResponse>\r\n"
++ );
+
-+ *responseXmlP = string(XMLRPC_MEMBLOCK_CONTENTS(char, response),
-+ XMLRPC_MEMBLOCK_SIZE(char, response));
-+
-+ xmlrpc_mem_block_free(response);
- }
-@@ -405,7 +517,7 @@ registry::processCall(string const& callXml,
- // xmlrpc_registry_process_call() does.
-
- output = xmlrpc_registry_process_call(
-- &env.env_c, this->c_registryP, NULL,
-+ &env.env_c, this->implP->c_registryP, NULL,
- callXml.c_str(), callXml.length());
-
- throwIfError(env);
-@@ -416,12 +528,24 @@ registry::processCall(string const& callXml,
- xmlrpc_mem_block_free(output);
- }
-
--xmlrpc_registry *
--registry::c_registry() const {
-
-- return this->c_registryP;
+ static void
+-createTestFile(string const& contents,
+- int * const fdP) {
++waitForNetworkTransport() {
++/*----------------------------------------------------------------------------
++ Wait for a message to travel through the network.
+
-+#define PROCESS_CALL_STACK_SIZE 256
-+ // This is our liberal estimate of how much stack space
-+ // registry::processCall() needs, not counting what
-+ // the call the to C registry uses.
++ This is part of our hack to allow us to test client/server communication
++ without the bother of a separate thread for each. One party writes
++ to a socket, causing the OS to buffer the message, then the other party
++ reads from the socket, getting the buffered message. We never wait
++ to send or receive, because with only one thread to do both, we would
++ deadlock. Instead, we just count on the buffer being big enough.
+
++ But on some systems, the message doesn't immediately travel like this. It
++ takes action by an independent thread (provided by the OS) to move the
++ message. In particular, we've seen this behavior on Windows (2010.10).
+
++ So we just sleep for a small amount of time to let the message move.
++-----------------------------------------------------------------------------*/
+
-+size_t
-+registry::maxStackSize() const {
++ // xmlrpc_millisecond_sleep() is allowed to return early, and on Windows
++ // it does that in preference to returning late insofar as the clock
++ // resolution doesn't allow returning at the exact time. It is rumored
++ // that Windows clock period may be as long as 40 milliseconds.
+
-+ return xmlrpc_registry_max_stackSize(this->implP->c_registryP) +
-+ PROCESS_CALL_STACK_SIZE;
- }
++ xmlrpc_millisecond_sleep(50);
++}
+- string const filename("/tmp/xmlrpc_test_pstream");
+- unlink(filename.c_str());
+- int rc;
+- rc = open(filename.c_str(), O_RDWR | O_CREAT);
+- unlink(filename.c_str());
+
+
- } // namespace
-
-
-diff --git a/libs/xmlrpc-c/src/cpp/server_abyss.cpp b/libs/xmlrpc-c/src/cpp/server_abyss.cpp
-index 3501f35..58fdd9b 100644
---- a/libs/xmlrpc-c/src/cpp/server_abyss.cpp
-+++ b/libs/xmlrpc-c/src/cpp/server_abyss.cpp
-@@ -1,10 +1,11 @@
-+#include "xmlrpc_config.h"
- #include <cstdlib>
- #include <string>
- #include <memory>
- #include <signal.h>
- #include <errno.h>
- #include <iostream>
--#ifndef _WIN32
-+#if !MSVCRT
- #include <sys/wait.h>
- #endif
-
-@@ -14,9 +15,13 @@
- using girerr::error;
- using girerr::throwf;
- #include "xmlrpc-c/base.h"
-+#include "xmlrpc-c/util.h"
- #include "xmlrpc-c/base.hpp"
-+#include "xmlrpc-c/abyss.h"
- #include "xmlrpc-c/server_abyss.h"
- #include "xmlrpc-c/registry.hpp"
-+#include "env_wrap.hpp"
++class client {
++/*----------------------------------------------------------------------------
++ This is an object you can use as a client to test a packet stream
++ server.
+
- #include "xmlrpc-c/server_abyss.hpp"
-
- using namespace std;
-@@ -43,14 +48,13 @@ sigchld(int const ASSERT_ONLY_ARG(signalClass)) {
- This is a signal handler for a SIGCHLD signal (which informs us that
- one of our child processes has terminated).
++ You attach the 'serverFd' member to your packet stream server, then
++ call the 'sendCall' method to send a call to your server, then call
++ the 'recvResp' method to get the response.
++
++ Destroying the object closes the connection.
++
++ We rely on typical, though unguaranteed socket function: we need to
++ be able to write 'contents' to the socket in a single write()
++ system call before the other side reads anything -- i.e. the socket
++ has to have a buffer that big. We do this because we're lazy; doing
++ it right would require forking a writer process.
++-----------------------------------------------------------------------------*/
++public:
++
++ client();
+
++ ~client();
++
++ void
++ sendCall(string const& callBytes) const;
++
++ void
++ hangup();
++
++ void
++ recvResp(string * const respBytesP) const;
++
++ int serverFd;
++
++private:
++
++ int clientFd;
++};
++
++
++
++client::client() {
++
++ enum {
++ SERVER = 0,
++ CLIENT = 1,
++ };
++ XMLRPC_SOCKET sockets[2];
++ int rc;
++
++ rc = XMLRPC_SOCKETPAIR(AF_UNIX, SOCK_STREAM, 0, sockets);
++
+ if (rc < 0)
+- throwf("Failed to create file '%s' as a test tool. errno=%d (%s)",
+- filename.c_str(), errno, strerror(errno));
++ throwf("Failed to create UNIX domain stream socket pair "
++ "as test tool. errno=%d (%s)",
++ errno, strerror(errno));
+ else {
+- int const fd(rc);
++ setNonBlocking(sockets[CLIENT]);
-- We respond by reaping the zombie process.
+- int rc;
+-
+- rc = write(fd, contents.c_str(), contents.length());
-
-- Implementation note: In some systems, just setting the signal handler
-- to SIG_IGN (ignore signal) does this. In some, the system does this
-- automatically if the signal is blocked.
-+ The only child processes we have are those that belong to the Abyss
-+ server (and then only if the Abyss server was configured to use
-+ forking as a threading mechanism), so we respond by passing the
-+ signal on to the Abyss server. And reaping the dead child.
- -----------------------------------------------------------------------------*/
- #ifndef _WIN32
-- /* Reap zombie children until there aren't any more. */
-+ // Reap zombie children / report to Abyss until there aren't any more.
-
- bool zombiesExist;
- bool error;
-@@ -71,7 +75,8 @@ sigchld(int const ASSERT_ONLY_ARG(signalClass)) {
- // This is OK - it's a ptrace notification
- } else
- error = true;
+- if (rc < 0)
+- throwf("write() of test file failed, errno=%d (%s)",
+- errno, strerror(errno));
+- else {
+- unsigned int bytesWritten(rc);
+-
+- if (bytesWritten != contents.length())
+- throwf("Short write");
+- else {
+- int rc;
+- rc = lseek(fd, 0, SEEK_SET);
+-
+- if (rc < 0)
+- throwf("lseek(0) of test file failed, errno=%d (%s)",
+- errno, strerror(errno));
+- }
- }
-+ } else
-+ ServerHandleSigchld(pid);
+- *fdP = fd;
++ this->serverFd = sockets[SERVER];
++ this->clientFd = sockets[CLIENT];
}
- #endif /* _WIN32 */
}
-@@ -160,41 +165,78 @@ public:
--serverAbyss::shutdown::shutdown(serverAbyss * const serverAbyssP) :
-- serverAbyssP(serverAbyssP) {}
--
--
--
--serverAbyss::shutdown::~shutdown() {}
--
--
--
--void
--serverAbyss::shutdown::doit(string const&,
-- void * const) const {
--
-- this->serverAbyssP->terminate();
--}
-+callInfo_serverAbyss::callInfo_serverAbyss(
-+ serverAbyss * const serverAbyssP,
-+ TSession * const abyssSessionP) :
-+ serverAbyssP(serverAbyssP), abyssSessionP(abyssSessionP) {}
++client::~client() {
+
++ XMLRPC_CLOSESOCKET(this->clientFd);
++ XMLRPC_CLOSESOCKET(this->serverFd);
++}
+
+
-+struct serverAbyss::constrOpt_impl {
+
-+ constrOpt_impl();
++void
++client::sendCall(string const& packetBytes) const {
+
-+ struct value {
-+ xmlrpc_c::registryPtr registryPtr;
-+ const xmlrpc_c::registry * registryP;
-+ XMLRPC_SOCKET socketFd;
-+ unsigned int portNumber;
-+ std::string logFileName;
-+ unsigned int keepaliveTimeout;
-+ unsigned int keepaliveMaxConn;
-+ unsigned int timeout;
-+ bool dontAdvertise;
-+ std::string uriPath;
-+ bool chunkResponse;
-+ std::string allowOrigin;
-+ unsigned int accessCtlMaxAge;
-+ bool serverOwnsSignals;
-+ bool expectSigchld;
-+ } value;
-+ struct {
-+ bool registryPtr;
-+ bool registryP;
-+ bool socketFd;
-+ bool portNumber;
-+ bool logFileName;
-+ bool keepaliveTimeout;
-+ bool keepaliveMaxConn;
-+ bool timeout;
-+ bool dontAdvertise;
-+ bool uriPath;
-+ bool chunkResponse;
-+ bool allowOrigin;
-+ bool accessCtlMaxAge;
-+ bool serverOwnsSignals;
-+ bool expectSigchld;
-+ } present;
-+};
-
-
-
--serverAbyss::constrOpt::constrOpt() {
-- present.registryPtr = false;
-- present.registryP = false;
-- present.socketFd = false;
-- present.portNumber = false;
-- present.logFileName = false;
-- present.keepaliveTimeout = false;
-- present.keepaliveMaxConn = false;
-- present.timeout = false;
-- present.dontAdvertise = false;
-- present.uriPath = false;
-- present.chunkResponse = false;
-+serverAbyss::constrOpt_impl::constrOpt_impl() {
-+ present.registryPtr = false;
-+ present.registryP = false;
-+ present.socketFd = false;
-+ present.portNumber = false;
-+ present.logFileName = false;
-+ present.keepaliveTimeout = false;
-+ present.keepaliveMaxConn = false;
-+ present.timeout = false;
-+ present.dontAdvertise = false;
-+ present.uriPath = false;
-+ present.chunkResponse = false;
-+ present.allowOrigin = false;
-+ present.accessCtlMaxAge = false;
-+ present.serverOwnsSignals = false;
-+ present.expectSigchld = false;
-
- // Set default values
-- value.dontAdvertise = false;
-- value.uriPath = string("/RPC2");
-- value.chunkResponse = false;
-+ value.dontAdvertise = false;
-+ value.uriPath = string("/RPC2");
-+ value.chunkResponse = false;
-+ value.serverOwnsSignals = true;
-+ value.expectSigchld = false;
- }
-
-
-@@ -202,40 +244,40 @@ serverAbyss::constrOpt::constrOpt() {
- #define DEFINE_OPTION_SETTER(OPTION_NAME, TYPE) \
- serverAbyss::constrOpt & \
- serverAbyss::constrOpt::OPTION_NAME(TYPE const& arg) { \
-- this->value.OPTION_NAME = arg; \
-- this->present.OPTION_NAME = true; \
-+ this->implP->value.OPTION_NAME = arg; \
-+ this->implP->present.OPTION_NAME = true; \
- return *this; \
- }
-
--DEFINE_OPTION_SETTER(registryPtr, xmlrpc_c::registryPtr);
--DEFINE_OPTION_SETTER(registryP, const registry *);
--DEFINE_OPTION_SETTER(socketFd, XMLRPC_SOCKET);
--DEFINE_OPTION_SETTER(portNumber, unsigned int);
--DEFINE_OPTION_SETTER(logFileName, string);
--DEFINE_OPTION_SETTER(keepaliveTimeout, unsigned int);
--DEFINE_OPTION_SETTER(keepaliveMaxConn, unsigned int);
--DEFINE_OPTION_SETTER(timeout, unsigned int);
--DEFINE_OPTION_SETTER(dontAdvertise, bool);
--DEFINE_OPTION_SETTER(uriPath, string);
--DEFINE_OPTION_SETTER(chunkResponse, bool);
-+DEFINE_OPTION_SETTER(registryPtr, xmlrpc_c::registryPtr);
-+DEFINE_OPTION_SETTER(registryP, const registry *);
-+DEFINE_OPTION_SETTER(socketFd, XMLRPC_SOCKET);
-+DEFINE_OPTION_SETTER(portNumber, unsigned int);
-+DEFINE_OPTION_SETTER(logFileName, string);
-+DEFINE_OPTION_SETTER(keepaliveTimeout, unsigned int);
-+DEFINE_OPTION_SETTER(keepaliveMaxConn, unsigned int);
-+DEFINE_OPTION_SETTER(timeout, unsigned int);
-+DEFINE_OPTION_SETTER(dontAdvertise, bool);
-+DEFINE_OPTION_SETTER(uriPath, string);
-+DEFINE_OPTION_SETTER(chunkResponse, bool);
-+DEFINE_OPTION_SETTER(allowOrigin, string);
-+DEFINE_OPTION_SETTER(accessCtlMaxAge, unsigned int);
-+DEFINE_OPTION_SETTER(serverOwnsSignals, bool);
-+DEFINE_OPTION_SETTER(expectSigchld, bool);
++ int rc;
+
-+#undef DEFINE_OPTION_SETTER
-
-
-+serverAbyss::constrOpt::constrOpt() {
-
--void
--serverAbyss::setAdditionalServerParms(constrOpt const& opt) {
-+ this->implP = new serverAbyss::constrOpt_impl();
++ rc = send(this->clientFd, packetBytes.c_str(), packetBytes.length(), 0);
++
++ waitForNetworkTransport();
++
++ if (rc < 0)
++ throwf("send() of test data to socket failed, errno=%d (%s)",
++ errno, strerror(errno));
++ else {
++ unsigned int bytesWritten(rc);
++
++ if (bytesWritten != packetBytes.length())
++ throwf("Short write to socket");
++ }
+}
-
-- /* The following ought to be parameters on ServerCreate(), but it
-- looks like plugging them straight into the TServer structure is
-- the only way to set them.
-- */
-
-- if (opt.present.keepaliveTimeout)
-- ServerSetKeepaliveTimeout(&this->cServer, opt.value.keepaliveTimeout);
-- if (opt.present.keepaliveMaxConn)
-- ServerSetKeepaliveMaxConn(&this->cServer, opt.value.keepaliveMaxConn);
-- if (opt.present.timeout)
-- ServerSetTimeout(&this->cServer, opt.value.timeout);
-- ServerSetAdvertise(&this->cServer, !opt.value.dontAdvertise);
+
-+serverAbyss::constrOpt::~constrOpt() {
+
-+ delete(this->implP);
- }
-
-
-@@ -280,10 +322,155 @@ createServer(bool const logFileNameGiven,
-
-
-
-+struct serverAbyss_impl {
-+ registryPtr regPtr;
-+ // This just holds a reference to the registry so that it may
-+ // get destroyed when the serverAbyss gets destroyed. If the
-+ // creator of the serverAbyss is managing lifetime himself,
-+ // this is a null pointer. 'registryP' is what you really use
-+ // to access the registry.
-+
-+ const registry * registryP;
+
-+ TServer cServer;
++void
++client::hangup() {
+
-+ serverAbyss_impl(serverAbyss::constrOpt_impl const& opt,
-+ serverAbyss * const serverAbyssP);
++ // Closing the socket (close()) would be a better simulation of the
++ // real world, and easier, but we shut down just the client->server
++ // half of the socket and remain open to receive an RPC response.
++ // That's because this test program is lazy and does the client and
++ // server in the same thread, depending on socket buffering on the
++ // receive side to provide parallelism. We need to be able to do the
++ // following sequence:
++ //
++ // - Client sends call
++ // - Client hangs up
++ // - Server gets call
++ // - Server sends response
++ // - Client gets response
++ // - Server notices hangup
+
-+ ~serverAbyss_impl();
++ shutdown(this->clientFd, 1); // Shutdown for transmission only
++}
++
++
++
++void
++client::recvResp(string * const packetBytesP) const {
+
-+ void
-+ setAdditionalServerParms(serverAbyss::constrOpt_impl const& opt);
++ char buffer[4096];
++ int rc;
+
-+ void
-+ setHttpReqHandlers(string const& uriPath,
-+ bool const chunkResponse,
-+ bool const doHttpAccessControl,
-+ string const& allowOrigin,
-+ bool const accessCtlExpires,
-+ unsigned int const accessCtlMaxAge);
-+ void
-+ run();
++ waitForNetworkTransport();
+
-+ void
-+ processCall(std::string const& call,
-+ TSession * const abyssSessionP,
-+ std::string * const responseP);
++ rc = recv(this->clientFd, buffer, sizeof(buffer), 0);
+
-+ serverAbyss * const serverAbyssP;
-+ // The server for which we are the implementation.
++ if (rc < 0)
++ throwf("recv() from socket failed, errno=%d (%s)",
++ errno, strerror(errno));
++ else {
++ unsigned int bytesReceived(rc);
+
-+ bool expectSigchld;
-+ bool serverOwnsSignals;
-+};
++ *packetBytesP = string(buffer, bytesReceived);
++ }
++}
+
+
+
+static void
-+processXmlrpcCall(xmlrpc_env * const envP,
-+ void * const arg,
-+ const char * const callXml,
-+ size_t const callXmlLen,
-+ TSession * const abyssSessionP,
-+ xmlrpc_mem_block ** const responseXmlPP) {
++testEmptyStream(registry const& myRegistry) {
+/*----------------------------------------------------------------------------
-+ This is an XML-RPC XML call processor, as called by the HTTP request
-+ handler of the libxmlrpc_server_abyss C library.
-+
-+ 'callXml'/'callXmlLen' is the XML text of a supposed XML-RPC call.
-+ We execute the RPC and return the XML text of the XML-RPC response
-+ as *responseXmlPP.
++ Here we send the pstream server an empty stream; i.e. we close the
++ socket from the client end without sending anything.
+
-+ 'arg' carries the information that tells us how to do that; e.g.
-+ what XML-RPC methods are defined.
++ This should cause the server to recognize EOF.
+-----------------------------------------------------------------------------*/
-+ serverAbyss_impl * const implP(
-+ static_cast<serverAbyss_impl *>(arg));
+
-+ try {
-+ string const call(callXml, callXmlLen);
++ client client;
+
-+ string response;
++ serverPstreamConn server(serverPstreamConn::constrOpt()
++ .registryP(&myRegistry)
++ .socketFd(client.serverFd));
+
-+ implP->processCall(call, abyssSessionP, &response);
++ client.hangup();
+
-+ xmlrpc_mem_block * responseMbP;
++ bool eof;
++ server.runOnce(&eof);
+
-+ responseMbP = XMLRPC_MEMBLOCK_NEW(char, envP, 0);
++ TEST(eof);
++}
+
-+ if (!envP->fault_occurred) {
-+ XMLRPC_MEMBLOCK_APPEND(char, envP, responseMbP,
-+ response.c_str(), response.length());
+
-+ *responseXmlPP = responseMbP;
-+ }
-+ } catch (exception const& e) {
-+ xmlrpc_env_set_fault(envP, XMLRPC_INTERNAL_ERROR, e.what());
-+ }
-+}
+
++static void
++testBrokenPacket(registry const& myRegistry) {
++/*----------------------------------------------------------------------------
++ Here we send a stream that is not a legal packetsocket stream: it
++ doesn't have any control word.
++-----------------------------------------------------------------------------*/
++ client client;
+
++ serverPstreamConn server(serverPstreamConn::constrOpt()
++ .registryP(&myRegistry)
++ .socketFd(client.serverFd));
+
- void
--serverAbyss::initialize(constrOpt const& opt) {
-+serverAbyss_impl::setAdditionalServerParms(
-+ serverAbyss::constrOpt_impl const& opt) {
-
-- const registry * registryP;
-+ // The following ought to be parameters on ServerCreate().
++ client.sendCall("junk");
++ client.hangup();
+
-+ if (opt.present.keepaliveTimeout)
-+ ServerSetKeepaliveTimeout(&this->cServer, opt.value.keepaliveTimeout);
-+ if (opt.present.keepaliveMaxConn)
-+ ServerSetKeepaliveMaxConn(&this->cServer, opt.value.keepaliveMaxConn);
-+ if (opt.present.timeout)
-+ ServerSetTimeout(&this->cServer, opt.value.timeout);
-+ ServerSetAdvertise(&this->cServer, !opt.value.dontAdvertise);
-+ if (opt.value.expectSigchld)
-+ ServerUseSigchld(&this->cServer);
++ bool eof;
++
++ EXPECT_ERROR(
++ server.runOnce(&eof);
++ );
+}
+
+
+
-+void
-+serverAbyss_impl::setHttpReqHandlers(string const& uriPath,
-+ bool const chunkResponse,
-+ bool const doHttpAccessControl,
-+ string const& allowOrigin,
-+ bool const accessCtlExpires,
-+ unsigned int const accessCtlMaxAge) {
++static void
++testEmptyPacket(registry const& myRegistry) {
+/*----------------------------------------------------------------------------
-+ This is a constructor helper. Don't assume *this is complete.
++ Here we send the pstream server one empty packet. It should respond
++ with one packet, being an XML-RPC fault response complaining that the
++ call is not valid XML.
+-----------------------------------------------------------------------------*/
-+ env_wrap env;
-+ xmlrpc_server_abyss_handler_parms parms;
++ client client;
+
-+ parms.xml_processor = &processXmlrpcCall;
-+ parms.xml_processor_arg = this;
-+ parms.xml_processor_max_stack = this->registryP->maxStackSize();
-+ parms.uri_path = uriPath.c_str();
-+ parms.chunk_response = chunkResponse;
-+ parms.allow_origin = doHttpAccessControl ? allowOrigin.c_str() : NULL;
-+ parms.access_ctl_expires = accessCtlExpires;
-+ parms.access_ctl_max_age = accessCtlMaxAge;
++ serverPstreamConn server(serverPstreamConn::constrOpt()
++ .registryP(&myRegistry)
++ .socketFd(client.serverFd));
+
-+ xmlrpc_server_abyss_set_handler3(
-+ &env.env_c, &this->cServer,
-+ &parms, XMLRPC_AHPSIZE(access_ctl_max_age));
-+
-+ if (env.env_c.fault_occurred)
-+ throwf("Failed to register the HTTP handler for XML-RPC "
-+ "with the underlying Abyss HTTP server. "
-+ "xmlrpc_server_abyss_set_handler3() failed with: %s",
-+ env.env_c.fault_string);
++ client.sendCall(packetStart + packetEnd);
+
-+ xmlrpc_server_abyss_set_default_handler(&this->cServer);
++ bool eof;
++ server.runOnce(&eof);
++
++ TEST(!eof);
++
++ string response;
++ client.recvResp(&response);
++
++ // We ought to validate that the response is a complaint about
++ // the empty call
++
++ client.hangup();
++
++ server.runOnce(&eof);
++
++ TEST(eof);
+}
-+
+
+
-+serverAbyss_impl::serverAbyss_impl(
-+ serverAbyss::constrOpt_impl const& opt,
-+ serverAbyss * const serverAbyssP) :
-+ serverAbyssP(serverAbyssP) {
-
- if (!opt.present.registryP && !opt.present.registryPtr)
- throwf("You must specify the 'registryP' or 'registryPtr' option");
-@@ -292,15 +479,21 @@ serverAbyss::initialize(constrOpt const& opt) {
- "the 'registryPtr' options");
- else {
- if (opt.present.registryP)
-- registryP = opt.value.registryP;
-+ this->registryP = opt.value.registryP;
- else {
-- this->registryPtr = opt.value.registryPtr;
-- registryP = this->registryPtr.get();
-+ this->regPtr = opt.value.registryPtr;
-+ this->registryP = this->regPtr.get();
- }
- }
- if (opt.present.portNumber && opt.present.socketFd)
- throwf("You can't specify both portNumber and socketFd options");
-
-+ this->serverOwnsSignals = opt.value.serverOwnsSignals;
++
++static void
++testCallInfo(client * const clientP,
++ serverPstreamConn * const serverP) {
+
-+ if (opt.value.serverOwnsSignals && opt.value.expectSigchld)
-+ throwf("You can't specify both expectSigchld "
-+ "and serverOwnsSignals options");
++ string const testCallInfoCallStream(
++ packetStart + testCallInfoCallXml + packetEnd
++ );
+
- DateInit();
-
- createServer(opt.present.logFileName, opt.value.logFileName,
-@@ -309,18 +502,16 @@ serverAbyss::initialize(constrOpt const& opt) {
- &this->cServer);
-
- try {
-- setAdditionalServerParms(opt);
-+ this->setAdditionalServerParms(opt);
++ string const testCallInfoResponseStream(
++ packetStart + testCallInfoResponseXml + packetEnd
++ );
+
-+ this->setHttpReqHandlers(opt.value.uriPath,
-+ opt.value.chunkResponse,
-+ opt.present.allowOrigin,
-+ opt.value.allowOrigin,
-+ opt.present.accessCtlMaxAge,
-+ opt.value.accessCtlMaxAge);
++ clientP->sendCall(testCallInfoCallStream);
++
++ callInfo_test callInfo;
++ int nointerrupt(0);
++ bool eof;
++ serverP->runOnce(&callInfo, &nointerrupt, &eof);
+
-
-- // chunked response implementation is incomplete. We must
-- // eventually get away from libxmlrpc_server_abyss and
-- // register our own handler with the Abyss server. At that
-- // time, we'll have some place to pass
-- // opt.value.chunkResponse.
--
-- xmlrpc_c::server_abyss_set_handlers(&this->cServer,
-- registryP,
-- opt.value.uriPath);
--
- if (opt.present.portNumber || opt.present.socketFd)
- ServerInit(&this->cServer);
- } catch (...) {
-@@ -331,6 +522,94 @@ serverAbyss::initialize(constrOpt const& opt) {
-
-
-
-+serverAbyss_impl::~serverAbyss_impl() {
++ TEST(!eof);
+
-+ ServerFree(&this->cServer);
++ string response;
++ clientP->recvResp(&response);
++
++ TEST(response == testCallInfoResponseStream);
+}
+
+
+
+static void
-+setupSignalsAndRunAbyss(TServer * const abyssServerP) {
++testNormalCall(registry const& myRegistry) {
+
-+ /* We do some pretty ugly stuff for an object method: we set signal
-+ handlers, which are process-global.
++ string const sampleAddGoodCallStream(
++ packetStart + sampleAddCallXml + packetEnd
++ );
+
-+ One example of where this can be hairy is: Caller has a child
-+ process unrelated to the Abyss server. That child dies. We
-+ get his death of a child signal and Caller never knows.
++ string const sampleAddGoodResponseStream(
++ packetStart + sampleAddResponseXml + packetEnd
++ );
+
-+ We really expect to be the only thing in the process, at least
-+ for the time we're running. If you want the Abyss Server
-+ to behave more like an object and own the signals yourself,
-+ use runOnce() in a loop instead of run().
-+ */
-+ signalHandlers oldHandlers;
++ client client;
+
-+ setupSignalHandlers(&oldHandlers);
++ serverPstreamConn server(serverPstreamConn::constrOpt()
++ .registryP(&myRegistry)
++ .socketFd(client.serverFd));
+
-+ ServerUseSigchld(abyssServerP);
++ client.sendCall(sampleAddGoodCallStream);
+
-+ ServerRun(abyssServerP);
++ bool eof;
+
-+ restoreSignalHandlers(oldHandlers);
-+}
++ int interrupt(1);
++ server.runOnce(&interrupt, &eof); // returns without reading socket
++ TEST(!eof);
+
++ server.runOnce(&eof);
+
++ TEST(!eof);
+
-+void
-+serverAbyss_impl::run() {
++ string response;
++ client.recvResp(&response);
+
-+ if (this->serverOwnsSignals)
-+ setupSignalsAndRunAbyss(&this->cServer);
-+ else {
-+ if (this->expectSigchld)
-+ ServerUseSigchld(&this->cServer);
++ TEST(response == sampleAddGoodResponseStream);
++
++ testCallInfo(&client, &server);
+
-+ ServerRun(&this->cServer);
-+ }
++ client.hangup();
++
++ server.runOnce(&eof);
++
++ TEST(eof);
+}
+
+
+
-+void
-+serverAbyss_impl::processCall(string const& call,
-+ TSession * const abyssSessionP,
-+ string * const responseP) {
++static void
++testNoWaitCall(registry const& myRegistry) {
+
-+ callInfo_serverAbyss const callInfo(this->serverAbyssP, abyssSessionP);
++ string const sampleAddGoodCallStream(
++ packetStart +
++ xmlPrologue +
++ "<methodCall>\r\n"
++ "<methodName>sample.add</methodName>\r\n"
++ "<params>\r\n"
++ "<param><value><i4>5</i4></value></param>\r\n"
++ "<param><value><i4>7</i4></value></param>\r\n"
++ "</params>\r\n"
++ "</methodCall>\r\n" +
++ packetEnd
++ );
++
+
-+ this->registryP->processCall(call, &callInfo, responseP);
-+}
++ string const sampleAddGoodResponseStream(
++ packetStart +
++ xmlPrologue +
++ "<methodResponse>\r\n"
++ "<params>\r\n"
++ "<param><value><i4>12</i4></value></param>\r\n"
++ "</params>\r\n"
++ "</methodResponse>\r\n" +
++ packetEnd
++ );
+
++ client client;
+
++ serverPstreamConn server(serverPstreamConn::constrOpt()
++ .registryP(&myRegistry)
++ .socketFd(client.serverFd));
+
-+serverAbyss::shutdown::shutdown(serverAbyss * const serverAbyssP) :
-+ serverAbyssP(serverAbyssP) {}
++ bool eof;
++ bool gotOne;
++ string response;
+
++ server.runOnceNoWait(&eof, &gotOne);
+
++ TEST(!eof);
++ TEST(!gotOne);
+
-+serverAbyss::shutdown::~shutdown() {}
++ server.runOnceNoWait(&eof);
+
++ TEST(!eof);
+
++ client.sendCall(sampleAddGoodCallStream);
+
-+void
-+serverAbyss::shutdown::doit(string const&,
-+ void * const) const {
++ server.runOnceNoWait(&eof, &gotOne);
+
-+ this->serverAbyssP->terminate();
-+}
++ TEST(!eof);
++ TEST(gotOne);
+
++ client.recvResp(&response);
+
++ TEST(response == sampleAddGoodResponseStream);
++
++ client.sendCall(sampleAddGoodCallStream);
+
-+void
-+serverAbyss::initialize(constrOpt const& opt) {
++ server.runOnce(&eof);
+
-+ this->implP = new serverAbyss_impl(*opt.implP, this);
-+}
++ TEST(!eof);
++ client.recvResp(&response);
++ TEST(response == sampleAddGoodResponseStream);
+
++ client.hangup();
+
++ server.runOnce(&eof);
+
- serverAbyss::serverAbyss(constrOpt const& opt) {
-
- initialize(opt);
-@@ -376,7 +655,7 @@ serverAbyss::serverAbyss(
-
- serverAbyss::~serverAbyss() {
-
-- ServerFree(&this->cServer);
-+ delete(this->implP);
- }
-
-
-@@ -384,83 +663,147 @@ serverAbyss::~serverAbyss() {
- void
- serverAbyss::run() {
-
-- /* We do some pretty ugly stuff for an object method: we set signal
-- handlers, which are process-global.
-+ this->implP->run();
-+}
-+
-
-- One example of where this can be hairy is: Caller has a child
-- process unrelated to the Abyss server. That child dies. We
-- get his death of a child signal and Caller never knows.
-
-- We really expect to be the only thing in the process, at least
-- for the time we're running. If you want the Abyss Server
-- to behave more like an object and own the signals yourself,
-- use runOnce() in a loop instead of run().
-- */
-- signalHandlers oldHandlers;
-+void
-+serverAbyss::runOnce() {
-
-- setupSignalHandlers(&oldHandlers);
-+ ServerRunOnce(&this->implP->cServer);
++ TEST(eof);
+}
-
-- ServerRun(&this->cServer);
-
-- restoreSignalHandlers(oldHandlers);
+
-+void
-+serverAbyss::runConn(int const socketFd) {
+
-+ ServerRunConn(&this->implP->cServer, socketFd);
- }
--
-
-
+
-+#ifndef WIN32
- void
--serverAbyss::runOnce() {
-+serverAbyss::sigchld(pid_t const pid) {
++static void
++testMultiRpcRunNoRpc(registry const& myRegistry) {
+
-+ // There's a hole in the design here, because the Abyss server uses
-+ // a process-global list of children (so there can't be more than one
-+ // Abyss object in the process), so while this is an object method,
-+ // it doesn't really refer to the object at all.
-
-- ServerRunOnce(&this->cServer);
-+ // We might conceivably fix Abyss some day, then this method would do
-+ // what you expect -- affect only its own object. But forking Abyss is
-+ // obsolete anyway, so we just don't worry about it.
++ client client;
+
-+ ServerHandleSigchld(pid);
- }
-+#endif
-
-
-
- void
--serverAbyss::runConn(int const socketFd) {
-+serverAbyss::terminate() {
-
-- ServerRunConn(&this->cServer, socketFd);
-+ ServerTerminate(&this->implP->cServer);
- }
-
-
-
-+callInfo_abyss::callInfo_abyss(TSession * const abyssSessionP) :
-+ abyssSessionP(abyssSessionP) {}
++ serverPstreamConn server(serverPstreamConn::constrOpt()
++ .registryP(&myRegistry)
++ .socketFd(client.serverFd));
+
++ client.hangup();
+
++ server.run();
++}
+
- void
--serverAbyss::terminate() {
-+processXmlrpcCall2(xmlrpc_env * const envP,
-+ void * const arg,
-+ const char * const callXml,
-+ size_t const callXmlLen,
-+ TSession * const abyssSessionP,
-+ xmlrpc_mem_block ** const responseXmlPP) {
-+/*----------------------------------------------------------------------------
-+ This is an XML-RPC XML call processor, as called by the HTTP request
-+ handler of the libxmlrpc_server_abyss C library.
+
-+ 'callXml'/'callXmlLen' is the XML text of a supposed XML-RPC call.
-+ We execute the RPC and return the XML text of the XML-RPC response
-+ as *responseXmlPP.
+
-+ 'arg' carries the information that tells us how to do that; e.g.
-+ what XML-RPC methods are defined.
-+-----------------------------------------------------------------------------*/
-+ const registry * const registryP(static_cast<registry *>(arg));
++static void
++testMultiRpcRunOneRpc(registry const& myRegistry) {
+
-+ try {
-+ string const call(callXml, callXmlLen);
-+ callInfo_abyss const callInfo(abyssSessionP);
-
-- ServerTerminate(&this->cServer);
-+ string response;
++ string const sampleAddGoodCallStream(
++ packetStart +
++ xmlPrologue +
++ "<methodCall>\r\n"
++ "<methodName>sample.add</methodName>\r\n"
++ "<params>\r\n"
++ "<param><value><i4>5</i4></value></param>\r\n"
++ "<param><value><i4>7</i4></value></param>\r\n"
++ "</params>\r\n"
++ "</methodCall>\r\n" +
++ packetEnd
++ );
++
++
++ string const sampleAddGoodResponseStream(
++ packetStart +
++ xmlPrologue +
++ "<methodResponse>\r\n"
++ "<params>\r\n"
++ "<param><value><i4>12</i4></value></param>\r\n"
++ "</params>\r\n"
++ "</methodResponse>\r\n" +
++ packetEnd
++ );
+
-+ registryP->processCall(call, &callInfo, &response);
++ client client;
+
-+ xmlrpc_mem_block * responseMbP;
++ serverPstreamConn server(serverPstreamConn::constrOpt()
++ .registryP(&myRegistry)
++ .socketFd(client.serverFd));
+
-+ responseMbP = XMLRPC_MEMBLOCK_NEW(char, envP, response.length());
+
-+ if (!envP->fault_occurred) {
-+ XMLRPC_MEMBLOCK_APPEND(char, envP, responseMbP,
-+ response.c_str(), response.length());
++ client.sendCall(sampleAddGoodCallStream);
++ client.hangup();
+
-+ *responseXmlPP = responseMbP;
-+ }
-+ } catch (exception const& e) {
-+ xmlrpc_env_set_fault(envP, XMLRPC_INTERNAL_ERROR, e.what());
-+ }
- }
-
++ int interrupt;
+
++ interrupt = 1;
++ server.run(&interrupt); // Returns without reading socket
+
-+static void
-+setHandlers(TServer * const serverP,
-+ string const& uriPath,
-+ registry const& registry) {
++ interrupt = 0;
++ server.run(&interrupt); // Does the buffered RPC
+
-+ xmlrpc_server_abyss_set_handler2(
-+ serverP, uriPath.c_str(),
-+ processXmlrpcCall2,
-+ const_cast<xmlrpc_c::registry *>(®istry),
-+ registry.maxStackSize(),
-+ false);
++ string response;
++ client.recvResp(&response);
+
-+ xmlrpc_server_abyss_set_default_handler(serverP);
++ TEST(response == sampleAddGoodResponseStream);
+}
+
+
+
- void
--server_abyss_set_handlers(TServer * const srvP,
-+server_abyss_set_handlers(TServer * const serverP,
- registry const& registry,
- string const& uriPath) {
-
-- xmlrpc_server_abyss_set_handlers2(srvP,
-- uriPath.c_str(),
-- registry.c_registry());
-+ setHandlers(serverP, uriPath, registry);
- }
-
-
-
- void
--server_abyss_set_handlers(TServer * const srvP,
-+server_abyss_set_handlers(TServer * const serverP,
- const registry * const registryP,
- string const& uriPath) {
-
-- xmlrpc_server_abyss_set_handlers2(srvP,
-- uriPath.c_str(),
-- registryP->c_registry());
-+ setHandlers(serverP, uriPath, *registryP);
- }
-
-
-
- void
--server_abyss_set_handlers(TServer * const srvP,
-+server_abyss_set_handlers(TServer * const serverP,
- registryPtr const registryPtr,
- string const& uriPath) {
-
-- xmlrpc_server_abyss_set_handlers2(srvP,
-- uriPath.c_str(),
-- registryPtr->c_registry());
-+ setHandlers(serverP, uriPath, *registryPtr.get());
- }
-
-
-diff --git a/libs/xmlrpc-c/src/cpp/server_pstream.cpp b/libs/xmlrpc-c/src/cpp/server_pstream.cpp
-index 86f2cc9..a1b19f8 100644
---- a/libs/xmlrpc-c/src/cpp/server_pstream.cpp
-+++ b/libs/xmlrpc-c/src/cpp/server_pstream.cpp
-@@ -9,24 +9,27 @@
- is an Xmlrpc-c invention. It is an almost trivial representation of
- a sequence of packets on a byte stream.
+ class serverPstreamConnTestSuite : public testSuite {
-- You can create a pstream server from any file descriptor from which
-- you can read and write a bidirectional character stream. Typically,
-- it's a TCP socket. Such a server talks to one client its entire life.
+ public:
+@@ -97,14 +644,12 @@ public:
+ return "serverPstreamConnTestSuite";
+ }
+ virtual void runtests(unsigned int const) {
+- int const devNullFd(open("/dev/null", 0));
-
-- Some day, we'll also have a version that you create from a "listening"
-- socket, which can talk to multiple clients serially (a client connects,
-- does some RPCs, and disconnects).
+- if (devNullFd < 0)
+- throwf("Failed to open /dev/null, needed for test.");
-
-- By Bryan Henderson 07.05.12.
-+ By Bryan Henderson 09.03.22
-
- Contributed to the public domain by its author.
- =============================================================================*/
-
-+#include "xmlrpc_config.h"
-+#if MSVCRT
-+#ifndef _CRT_SECURE_NO_WARNINGS
-+#define _CRT_SECURE_NO_WARNINGS
-+#endif
-+#include <winsock.h>
-+typedef int socklen_t;
-+#else
-+#include <sys/socket.h>
-+#endif
-+#include <errno.h>
-+#include <cstring>
- #include <memory>
-
- #include "xmlrpc-c/girerr.hpp"
- using girerr::throwf;
--#include "xmlrpc-c/packetsocket.hpp"
-
- #include "xmlrpc-c/server_pstream.hpp"
-
-@@ -35,20 +38,52 @@ using namespace std;
- namespace xmlrpc_c {
+ registry myRegistry;
+
+- myRegistry.addMethod("sample.add", methodPtr(new sampleAddMethod));
++ myRegistry.addMethod("sample.add",
++ methodPtr(new sampleAddMethod));
++ myRegistry.addMethod("test.callinfo",
++ methodPtr(new testCallInfoMethod));
+ registryPtr myRegistryP(new registry);
--serverPstreamConn::constrOpt::constrOpt() {
-+struct serverPstream::constrOpt_impl {
-+
-+ constrOpt_impl();
-+
-+ struct value {
-+ xmlrpc_c::registryPtr registryPtr;
-+ const xmlrpc_c::registry * registryP;
-+ XMLRPC_SOCKET socketFd;
-+ } value;
-+ struct {
-+ bool registryPtr;
-+ bool registryP;
-+ bool socketFd;
-+ } present;
-+};
+@@ -125,43 +670,140 @@ public:
+ .registryP(&myRegistry));
+ );
+
+- EXPECT_ERROR( // No such file descriptor
+- serverPstreamConn server(serverPstreamConn::constrOpt()
+- .registryP(&myRegistry)
+- .socketFd(37));
+- );
++ testEmptyStream(myRegistry);
+
++ testBrokenPacket(myRegistry);
+
++ testEmptyPacket(myRegistry);
+
-+serverPstream::constrOpt_impl::constrOpt_impl() {
++ testNormalCall(myRegistry);
+
-+ this->present.socketFd = false;
-+ this->present.registryP = false;
-+ this->present.registryPtr = false;
-+}
++ testNoWaitCall(myRegistry);
+
++ testMultiRpcRunNoRpc(myRegistry);
+
++ testMultiRpcRunOneRpc(myRegistry);
++ }
++};
+
-+serverPstream::constrOpt::constrOpt() {
-
-- present.socketFd = false;
-- present.registryP = false;
-- present.registryPtr = false;
-+ this->implP = new serverPstream::constrOpt_impl();
-+}
+
+
++static void
++testMultiConnInterrupt(registry const& myRegistry) {
+
-+serverPstream::constrOpt::~constrOpt() {
++ // We use a nonexistent file descriptor, but the server won't
++ // ever access it, so it won't know.
+
-+ delete(this->implP);
- }
-
-
-
- #define DEFINE_OPTION_SETTER(OPTION_NAME, TYPE) \
--serverPstreamConn::constrOpt & \
--serverPstreamConn::constrOpt::OPTION_NAME(TYPE const& arg) { \
-- this->value.OPTION_NAME = arg; \
-- this->present.OPTION_NAME = true; \
-+serverPstream::constrOpt & \
-+serverPstream::constrOpt::OPTION_NAME(TYPE const& arg) { \
-+ this->implP->value.OPTION_NAME = arg; \
-+ this->implP->present.OPTION_NAME = true; \
- return *this; \
- }
-
-@@ -60,8 +95,63 @@ DEFINE_OPTION_SETTER(registryPtr, xmlrpc_c::registryPtr);
-
-
-
-+struct serverPstream_impl {
++ serverPstream server(serverPstream::constrOpt()
++ .registryP(&myRegistry)
++ .socketFd(37));
+
-+ serverPstream_impl(serverPstream::constrOpt_impl const& opt);
++ int interrupt(1); // interrupt immediately
+
-+ ~serverPstream_impl();
++ server.runSerial(&interrupt);
++}
+
-+ void
-+ establishRegistry(serverPstream::constrOpt_impl const& opt);
+
-+ // 'registryP' is what we actually use; 'registryHolder' just holds a
-+ // reference to 'registryP' so the registry doesn't disappear while
-+ // this server exists. But note that if the creator doesn't supply
-+ // a registryPtr, 'registryHolder' is just a placeholder variable and
-+ // the creator is responsible for making sure the registry doesn't
-+ // go anywhere while the server exists.
+
-+ registryPtr registryHolder;
-+ const registry * registryP;
++class derivedServer : public xmlrpc_c::serverPstream {
++public:
++ derivedServer(serverPstream::constrOpt const& constrOpt) :
++ serverPstream(constrOpt),
++ info("this is my derived server") {}
+
-+ XMLRPC_SOCKET listenSocketFd;
-+ // The socket on which we accept connections from clients. This comes
-+ // to us from the creator, already bound and in listen mode. That
-+ // way, this object doesn't have to know anything about socket
-+ // addresses or listen parameters such as the maximum connection
-+ // backlog size.
-+
-+ bool termRequested;
-+ // User has requested that the run method return ASAP; i.e. that
-+ // the server cease servicing RPCs.
++ string const info;
+};
+
+
+
-+serverPstream_impl::serverPstream_impl(
-+ serverPstream::constrOpt_impl const& opt) {
-+
-+ this->establishRegistry(opt);
-+
-+ if (!opt.present.socketFd)
-+ throwf("You must provide a 'socketFd' constructor option.");
-+
-+ this->listenSocketFd = opt.value.socketFd;
++class multiTestCallInfoMethod : public method2 {
+
-+ this->termRequested = false;
-+}
++// The test isn't sophisticated enough actually to do an RPC, so this
++// code never runs. We just want to see if it compiles.
+
++public:
++ virtual void
++ execute(paramList const& paramList,
++ const callInfo * const callInfoPtr,
++ value * const retvalP) {
+
++ const callInfo_serverPstream * const callInfoP(
++ dynamic_cast<const callInfo_serverPstream *>(callInfoPtr));
+
-+serverPstream_impl::~serverPstream_impl() {
++ TEST(callInfoP != NULL);
+
+- {
+- serverPstreamConn server(serverPstreamConn::constrOpt()
+- .registryP(&myRegistry)
+- .socketFd(devNullFd));
++ paramList.verifyEnd(0);
+
+- bool eof;
+- server.runOnce(&eof);
+- TEST(eof);
+- }
+- {
+- int fd;
+- createTestFile("junk", &fd);
++ derivedServer * const derivedServerP(
++ dynamic_cast<derivedServer *>(callInfoP->serverP));
+
+- serverPstreamConn server(serverPstreamConn::constrOpt()
+- .registryP(&myRegistry)
+- .socketFd(fd));
++ TEST(derivedServerP->info == string("this is my derived server"));
+
-+}
++ TEST(callInfoP->clientAddr.sa_family == AF_INET);
++ TEST(callInfoP->clientAddrSize >= sizeof(struct sockaddr_in));
++
++ *retvalP = value_nil();
++ }
++};
+
++static void
++testMultiConnCallInfo() {
+
++ registry myRegistry;
++
++ myRegistry.addMethod("testCallInfo",
++ methodPtr(new multiTestCallInfoMethod));
+
- void
--serverPstreamConn::establishRegistry(constrOpt const& opt) {
-+serverPstream_impl::establishRegistry(
-+ serverPstream::constrOpt_impl const& opt) {
-
- if (!opt.present.registryP && !opt.present.registryPtr)
- throwf("You must specify the 'registryP' or 'registryPtr' option");
-@@ -79,109 +169,110 @@ serverPstreamConn::establishRegistry(constrOpt const& opt) {
- }
-
-
-+/*-----------------------------------------------------------------------------
-+ serverPstream::shutdown is a derived class of registry::shutdown. You give
-+ it to the registry object to allow XML-RPC method 'system.shutdown' to
-+-----------------------------------------------------------------------------*/
-
--void
--serverPstreamConn::establishPacketSocket(constrOpt const& opt) {
-+serverPstream::shutdown::shutdown(serverPstream * const serverPstreamP) :
-+ serverPstreamP(serverPstreamP) {}
-
-- if (!opt.present.socketFd)
-- throwf("You must provide a 'socketFd' constructor option.");
--
-- auto_ptr<packetSocket> packetSocketAP;
-
-- try {
-- auto_ptr<packetSocket> p(new packetSocket(opt.value.socketFd));
-- packetSocketAP = p;
-- } catch (exception const& e) {
-- throwf("Unable to create packet socket out of file descriptor %d. %s",
-- opt.value.socketFd, e.what());
-- }
-- this->packetSocketP = packetSocketAP.get();
-- packetSocketAP.release();
--}
-
-+serverPstream::shutdown::~shutdown() {}
-
-
--serverPstreamConn::serverPstreamConn(constrOpt const& opt) {
-
-- this->establishRegistry(opt);
-+void
-+serverPstream::shutdown::doit(string const&,
-+ void * const) const {
-
-- this->establishPacketSocket(opt);
-+ this->serverPstreamP->terminate();
- }
-+/*---------------------------------------------------------------------------*/
-
-
-
--serverPstreamConn::~serverPstreamConn() {
-+serverPstream::serverPstream(constrOpt const& opt) {
-
-- delete(this->packetSocketP);
-+ this->implP = new serverPstream_impl(*opt.implP);
- }
-
-
-
--void
--processCall(const registry * const registryP,
-- packetPtr const& callPacketP,
-- packetPtr * const responsePacketPP) {
-+serverPstream::~serverPstream() {
-
-- string const callXml(reinterpret_cast<char *>(callPacketP->getBytes()),
-- callPacketP->getLength());
-+ delete(this->implP);
++ derivedServer server(serverPstream::constrOpt()
++ .registryP(&myRegistry)
++ .socketFd(37));
+}
-
-- string responseXml;
-
-- registryP->processCall(callXml, &responseXml);
-
-- *responsePacketPP = packetPtr(new packet(responseXml.c_str(),
-- responseXml.length()));
-+void
-+serverPstream::runSerial(volatile const int * const interruptP) {
+
-+ while (!this->implP->termRequested && !*interruptP) {
-+ struct sockaddr peerAddr;
-+ socklen_t size = sizeof(peerAddr);
-+ int rc;
+
-+ rc = accept(this->implP->listenSocketFd, &peerAddr, &size);
+
-+ if (!*interruptP) {
-+ if (rc < 0)
-+ if (errno == EINTR) {
-+ // system call was interrupted, but user doesn't want
-+ // to interrupt the server, so just keep trying
-+ } else
-+ throwf("Failed to accept a connection "
-+ "on the listening socket. accept() failed "
-+ "with errno %d (%s)", errno, strerror(errno));
-+ else {
-+ int const acceptedFd = rc;
++class multiConnServerTestSuite : public testSuite {
+
-+ serverPstreamConn connectionServer(
-+ xmlrpc_c::serverPstreamConn::constrOpt()
-+ .socketFd(acceptedFd)
-+ .registryP(this->implP->registryP));
++public:
++ virtual string suiteName() {
++ return "multiConnServerTestSuite";
++ }
++ virtual void runtests(unsigned int const) {
++ registry myRegistry;
++
++ myRegistry.addMethod("sample.add",
++ methodPtr(new sampleAddMethod));
+
-+ callInfo_serverPstream callInfo(this, peerAddr, size);
++ registryPtr myRegistryP(new registry);
+
-+ connectionServer.run(&callInfo, interruptP);
-+ }
-+ }
-+ }
- }
-
-
-
- void
--serverPstreamConn::runOnce(volatile const int * const interruptP,
-- bool * const eofP) {
--/*----------------------------------------------------------------------------
-- Get and execute one RPC from the client.
-+serverPstream::runSerial() {
-
-- Unless *interruptP gets set nonzero first.
-------------------------------------------------------------------------------*/
-- bool gotPacket;
-- packetPtr callPacketP;
--
-- try {
-- this->packetSocketP->readWait(interruptP, eofP, &gotPacket,
-- &callPacketP);
-- } catch (exception const& e) {
-- throwf("Error reading a packet from the packet socket. %s",
-- e.what());
-- }
-- if (gotPacket) {
-- packetPtr responsePacketP;
-- try {
-- processCall(this->registryP, callPacketP, &responsePacketP);
-- } catch (exception const& e) {
-- throwf("Error executing received packet as an XML-RPC RPC. %s",
-- e.what());
-- }
-- try {
-- this->packetSocketP->writeWait(responsePacketP);
-- } catch (exception const& e) {
-- throwf("Failed to write the response to the packet socket. %s",
-- e.what());
-- }
-- }
-+ int const interrupt(0); // Never interrupt
++ myRegistryP->addMethod("sample.add", methodPtr(new sampleAddMethod));
+
-+ this->runSerial(&interrupt);
- }
-
-
-
- void
--serverPstreamConn::runOnce(bool * const eofP) {
--/*----------------------------------------------------------------------------
-- Get and execute one RPC from the client.
-------------------------------------------------------------------------------*/
-- int const interrupt(0); // Never interrupt
-+serverPstream::terminate() {
-
-- this->runOnce(&interrupt, eofP);
-+ this->implP->termRequested = true;
- }
-
++ EXPECT_ERROR( // Empty options
++ serverPstream::constrOpt opt;
++ serverPstream server(opt);
++ );
+- bool eof;
++ EXPECT_ERROR( // No registry
++ serverPstream server(serverPstream::constrOpt()
++ .socketFd(3));
++ );
-+callInfo_serverPstream::callInfo_serverPstream(
-+ serverPstream * const serverP,
-+ struct sockaddr const clientAddr,
-+ socklen_t const clientAddrSize) :
-+
-+ serverP(serverP),
-+ clientAddr(clientAddr),
-+ clientAddrSize(clientAddrSize)
-+
-+{}
-+
-+
-+
- } // namespace
-diff --git a/libs/xmlrpc-c/src/cpp/test/Makefile b/libs/xmlrpc-c/src/cpp/test/Makefile
-index ff6750f..ccde8f5 100644
---- a/libs/xmlrpc-c/src/cpp/test/Makefile
-+++ b/libs/xmlrpc-c/src/cpp/test/Makefile
-@@ -17,20 +17,16 @@ all: $(PROGS)
+- EXPECT_ERROR( // EOF in the middle of a packet
+- server.runOnce(&eof);
+- );
+- close(fd);
+- }
++ EXPECT_ERROR( // No socket fd
++ serverPstream server(serverPstream::constrOpt()
++ .registryP(&myRegistry));
++ );
++
++ testMultiConnInterrupt(myRegistry);
- XMLRPC_C_CONFIG = $(BLDDIR)/xmlrpc-c-config.test
+- close(devNullFd);
++ testMultiConnCallInfo();
+ }
+ };
--CXXFLAGS = $(CXXFLAGS_COMMON) $(CFLAGS_PERSONAL) $(CADD)
--
--LDFLAGS += $(shell $(XMLRPC_C_CONFIG) client --ldadd)
-+LIBS := $(shell $(XMLRPC_C_CONFIG) client --ldadd)
- ifeq ($(MUST_BUILD_CURL_CLIENT),yes)
-- LDFLAGS += $(shell curl-config --libs)
-+ LIBS += $(shell curl-config --libs)
- endif
- ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes)
-- LDFLAGS += $(shell libwww-config --libs)
-+ LIBS += $(shell libwww-config --libs)
- endif
--LDFLAGS += "-lpthread"
--
--LDFLAGS += $(LADD)
-+LIBS += -lpthread
++} // unnamed namespace
++
++
++
+ string
+ serverPstreamTestSuite::suiteName() {
+ return "serverPstreamTestSuite";
+@@ -173,5 +815,6 @@ serverPstreamTestSuite::runtests(unsigned int const indentation) {
- INCLUDES = -Isrcdir/include -I$(BLDDIR) -Isrcdir -Isrcdir/lib/util/include
+ serverPstreamConnTestSuite().run(indentation + 1);
-@@ -42,7 +38,15 @@ Makefile: srcdir
- include $(SRCDIR)/common.mk
++ multiConnServerTestSuite().run(indentation + 1);
+ }
+diff --git a/libs/xmlrpc-c/src/cpp/test/test.cpp b/libs/xmlrpc-c/src/cpp/test/test.cpp
+index c92653f..e632595 100644
+--- a/libs/xmlrpc-c/src/cpp/test/test.cpp
++++ b/libs/xmlrpc-c/src/cpp/test/test.cpp
+@@ -4,6 +4,7 @@
+ #include <vector>
+ #include <sstream>
+ #include <memory>
++#include <cstring>
+ #include <time.h>
--TEST_OBJS = test.o registry.o server_abyss.o server_pstream.o tools.o
-+TEST_OBJS = \
-+ test.o \
-+ base64.o \
-+ registry.o \
-+ server_abyss.o \
-+ server_pstream.o \
-+ tools.o \
-+ value.o \
-+ xml.o \
+ #include "xmlrpc-c/girerr.hpp"
+@@ -13,6 +14,9 @@ using girerr::error;
+ #include "xmlrpc-c/oldcppwrapper.hpp"
+ #include "xmlrpc-c/registry.hpp"
- ifeq ($(MUST_BUILD_CLIENT),yes)
- TEST_OBJS += testclient.o
-@@ -69,16 +73,17 @@ TEST_LIBS = \
- ifneq ($(ENABLE_LIBXML2_BACKEND),yes)
- # We're using the internal Expat XML parser
- TEST_LIBS += $(LIBXMLRPC_XMLPARSE_A) $(LIBXMLRPC_XMLTOK_A)
-- LDADD_XML =
-+ LIB_XML =
-+ registry.o: D_INTERNAL_EXPAT=-DINTERNAL_EXPAT
- else
-- LDADD_XML = $(shell xml2-config --libs)
-+ LIB_XML = $(shell xml2-config --libs)
- endif
++#include "base64.hpp"
++#include "xml.hpp"
++#include "value.hpp"
+ #include "testclient.hpp"
+ #include "registry.hpp"
+ #include "server_abyss.hpp"
+@@ -189,7 +193,7 @@ void test_value (void) {
+ XmlRpcValue::makeArray().getArray();
+ XmlRpcValue::makeStruct().getStruct();
- test: $(TEST_OBJS) $(TEST_LIBS)
-- $(CXXLD) -o $@ $(LDFLAGS) $(LDADD_XML) $^
-+ $(CXXLD) -o $@ $(LDFLAGS) $(LADD) $^ $(LIB_XML) $(LIBS)
+- // Test Base64 values.
++ // Test byte string values.
+ const unsigned char *b64_data;
+ size_t b64_len;
+ XmlRpcValue val6 = XmlRpcValue::makeBase64((unsigned char*) "a\0\0b", 4);
+@@ -216,7 +220,7 @@ void test_value (void) {
+ TEST(strct.structSize() == 2);
+ TEST(strct.structHasKey("bar"));
+ TEST(!strct.structHasKey("nosuch"));
+- for (size_t i = 0; i < strct.structSize(); i++) {
++ for (int i = 0; i < (int)strct.structSize(); ++i) {
+ string key;
+ XmlRpcValue value;
+ strct.structGetKeyAndValue(i, key, value);
+@@ -240,285 +244,66 @@ testXmlRpcCpp() {
- %.o:%.cpp
-- $(CXX) -c $(INCLUDES) $(CXXFLAGS) $<
-+ $(CXX) -c $(INCLUDES) $(CXXFLAGS_ALL) $(D_INTERNAL_EXPAT) $<
- # Note the difference between 'check' and 'runtests'. 'check' means to check
- # our own correctness. 'runtests' means to run the tests that check our
-@@ -104,4 +109,4 @@ distclean: clean distclean-common
- .PHONY: dep
- dep: dep-common
--include Makefile.depend
-+include depend.mk
-diff --git a/libs/xmlrpc-c/src/cpp/test/registry.cpp b/libs/xmlrpc-c/src/cpp/test/registry.cpp
-index 6ca265a..c7e6e42 100644
---- a/libs/xmlrpc-c/src/cpp/test/registry.cpp
-+++ b/libs/xmlrpc-c/src/cpp/test/registry.cpp
-@@ -20,11 +20,19 @@ using namespace xmlrpc_c;
- using namespace std;
+-class intTestSuite : public testSuite {
+-public:
+- virtual string suiteName() {
+- return "intTestSuite";
+- }
+- virtual void runtests(unsigned int const) {
+- value_int int1(7);
+- TEST(static_cast<int>(int1) == 7);
+- value_int int2(-7);
+- TEST(static_cast<int>(int2) == -7);
+- value val1(int1);
+- TEST(val1.type() == value::TYPE_INT);
+- value_int int3(val1);
+- TEST(static_cast<int>(int3) == 7);
+- try {
+- value_int int4(value_double(3.7));
+- TEST_FAILED("invalid cast double-int suceeded");
+- } catch (error) {}
+- }
+-};
+-
+-
+-
+-class doubleTestSuite : public testSuite {
+-public:
+- virtual string suiteName() {
+- return "doubleTestSuite";
+- }
+- virtual void runtests(unsigned int const) {
+- value_double double1(3.14);
+- TEST(static_cast<double>(double1) == 3.14);
+- value val1(double1);
+- TEST(val1.type() == value::TYPE_DOUBLE);
+- value_double double2(val1);
+- TEST(static_cast<double>(double2) == 3.14);
+- try {
+- value_double double4(value_int(4));
+- TEST_FAILED("invalid cast int-double suceeded");
+- } catch (error) {}
+- }
+-};
+-
+-
+-
+-class booleanTestSuite : public testSuite {
+-public:
+- virtual string suiteName() {
+- return "booleanTestSuite";
+- }
+- virtual void runtests(unsigned int const) {
+- value_boolean boolean1(true);
+- TEST(static_cast<bool>(boolean1) == true);
+- value_boolean boolean2(false);
+- TEST(static_cast<bool>(boolean2) == false);
+- value val1(boolean1);
+- TEST(val1.type() == value::TYPE_BOOLEAN);
+- value_boolean boolean3(val1);
+- TEST(static_cast<bool>(boolean3) == true);
+- try {
+- value_boolean boolean4(value_int(4));
+- TEST_FAILED("invalid cast int-boolean suceeded");
+- } catch (error) {}
+- }
+-};
+-
+-
+-
+-class datetimeTestSuite : public testSuite {
+-public:
+- virtual string suiteName() {
+- return "datetimeTestSuite";
+- }
+- virtual void runtests(unsigned int const) {
+- time_t const testTime(900684535);
+- value_datetime datetime1("19980717T14:08:55");
+- TEST(static_cast<time_t>(datetime1) == testTime);
+- value_datetime datetime2(testTime);
+- TEST(static_cast<time_t>(datetime2) == testTime);
+- value val1(datetime1);
+- TEST(val1.type() == value::TYPE_DATETIME);
+- value_datetime datetime3(val1);
+- TEST(static_cast<time_t>(datetime3) == testTime);
+- try {
+- value_datetime datetime4(value_int(4));
+- TEST_FAILED("invalid cast int-datetime suceeded");
+- } catch (error) {}
+- }
+-};
+-
+-
+-
+-class stringTestSuite : public testSuite {
+-public:
+- virtual string suiteName() {
+- return "stringTestSuite";
+- }
+- virtual void runtests(unsigned int const) {
+- value_string string1("hello world");
+- TEST(static_cast<string>(string1) == "hello world");
+- value_string string2("embedded\0null");
+- TEST(static_cast<string>(string2) == "embedded\0null");
+- value val1(string1);
+- TEST(val1.type() == value::TYPE_STRING);
+- value_string string3(val1);
+- TEST(static_cast<string>(string3) == "hello world");
+- try {
+- value_string string4(value_int(4));
+- TEST_FAILED("invalid cast int-string succeeded");
+- } catch (error) {}
+- value_string string5("hello world", value_string::nlCode_all);
+- TEST(static_cast<string>(string5) == "hello world");
+- value_string string6("hello\nthere\rworld\r\n\n",
+- value_string::nlCode_all);
+- TEST(static_cast<string>(string6) == "hello\nthere\nworld\n\n");
+- TEST(string6.crlfValue() == "hello\r\nthere\r\nworld\r\n\r\n");
+- value_string string7("hello\nthere\rworld\r\n\n",
+- value_string::nlCode_lf);
+- TEST(static_cast<string>(string7) == "hello\nthere\rworld\r\n\n");
+- }
+-};
+-
+-
+-
+-class bytestringTestSuite : public testSuite {
+-public:
+- virtual string suiteName() {
+- return "bytestringTestSuite";
+- }
+- virtual void runtests(unsigned int const) {
+- unsigned char bytestringArray[] = {0x10, 0x11, 0x12, 0x13, 0x14};
+- vector<unsigned char>
+- bytestringData(&bytestringArray[0], &bytestringArray[4]);
+- value_bytestring bytestring1(bytestringData);
+-
+- vector<unsigned char> const dataReadBack1(
+- bytestring1.vectorUcharValue());
+- TEST(dataReadBack1 == bytestringData);
+- value val1(bytestring1);
+- TEST(val1.type() == value::TYPE_BYTESTRING);
+- value_bytestring bytestring2(val1);
+- vector<unsigned char> const dataReadBack2(
+- bytestring2.vectorUcharValue());
+- TEST(dataReadBack2 == bytestringData);
+- try {
+- value_bytestring bytestring4(value_int(4));
+- TEST_FAILED("invalid cast int-bytestring suceeded");
+- } catch (error) {}
+- }
+-};
+-
+-
+-
+-class nilTestSuite : public testSuite {
+-public:
+- virtual string suiteName() {
+- return "nilTestSuite";
+- }
+- virtual void runtests(unsigned int const) {
+- value_nil nil1;
+- value val1(nil1);
+- TEST(val1.type() == value::TYPE_NIL);
+- value_nil nil2(val1);
+- try {
+- value_nil nil4(value_int(4));
+- TEST_FAILED("invalid cast int-nil suceeded");
+- } catch (error) {}
+- }
+-};
+-
+-
+-
+-class i8TestSuite : public testSuite {
+-public:
+- virtual string suiteName() {
+- return "i8TestSuite";
+- }
+- virtual void runtests(unsigned int const) {
+- value_i8 int1(7);
+- TEST(static_cast<xmlrpc_int64>(int1) == 7);
+- value_i8 int2(-7);
+- TEST(static_cast<xmlrpc_int64>(int2) == -7);
+- value_i8 int5(1ull << 40);
+- TEST(static_cast<xmlrpc_int64>(int5) == (1ull << 40));
+- value val1(int1);
+- TEST(val1.type() == value::TYPE_I8);
+- value_i8 int3(val1);
+- TEST(static_cast<xmlrpc_int64>(int3) == 7);
+- try {
+- value_i8 int4(value_double(3.7));
+- TEST_FAILED("invalid cast double-i8 suceeded");
+- } catch (error) {}
+- }
+-};
+-
+-
+-
+-class structTestSuite : public testSuite {
+-public:
+- virtual string suiteName() {
+- return "structTestSuite";
+- }
+- virtual void runtests(unsigned int const) {
+- map<string, value> structData;
+- pair<string, value> member("the_integer", value_int(9));
+- structData.insert(member);
+-
+- value_struct struct1(structData);
+-
+- map<string, value> dataReadBack(struct1);
+-
+- TEST(static_cast<int>(value_int(dataReadBack["the_integer"])) == 9);
+-
+- value val1(struct1);
+- TEST(val1.type() == value::TYPE_STRUCT);
+- value_struct struct2(val1);
+- try {
+- value_struct struct4(value_int(4));
+- TEST_FAILED("invalid cast int-struct suceeded");
+- } catch (error) {}
+- }
+-};
+-
+-
+-
+-class arrayTestSuite : public testSuite {
+-public:
+- virtual string suiteName() {
+- return "arrayTestSuite";
+- }
+- virtual void runtests(unsigned int const) {
+- vector<value> arrayData;
+- arrayData.push_back(value_int(7));
+- arrayData.push_back(value_double(2.78));
+- arrayData.push_back(value_string("hello world"));
+- value_array array1(arrayData);
+-
+- TEST(array1.size() == 3);
+- vector<value> dataReadBack1(array1.vectorValueValue());
+- TEST(dataReadBack1[0].type() == value::TYPE_INT);
+- TEST(static_cast<int>(value_int(dataReadBack1[0])) == 7);
+- TEST(dataReadBack1[1].type() == value::TYPE_DOUBLE);
+- TEST(static_cast<double>(value_double(dataReadBack1[1])) == 2.78);
+- TEST(dataReadBack1[2].type() == value::TYPE_STRING);
+- TEST(static_cast<string>(value_string(dataReadBack1[2])) ==
+- "hello world");
+-
+- value val1(array1);
+- TEST(val1.type() == value::TYPE_ARRAY);
+- value_array array2(val1);
+- TEST(array2.size() == 3);
+- try {
+- value_array array4(value_int(4));
+- TEST_FAILED("invalid cast int-array suceeded");
+- } catch (error) {}
+- }
+-};
++static void
++buildParamListWithAdd(paramList * const paramListP,
++ time_t const timeFuture) {
++
++ paramListP->add(value_int(7));
++ paramListP->add(value_boolean(true)).add(value_double(3.14));
++ time_t const timeZero(0);
++ paramListP->add(value_datetime(timeZero));
++ paramListP->add(value_datetime(timeFuture));
++ paramListP->add(value_string("hello world"));
++ unsigned char bytestringArray[] = {0x10, 0x11, 0x12, 0x13, 0x14};
++ vector<unsigned char>
++ bytestringData(&bytestringArray[0], &bytestringArray[4]);
++ paramListP->add(value_bytestring(bytestringData));
++ vector<value> arrayData;
++ arrayData.push_back(value_int(7));
++ arrayData.push_back(value_double(2.78));
++ arrayData.push_back(value_string("hello world"));
++ paramListP->add(value_array(arrayData));
++ map<string, value> structData;
++ pair<string, value> member("the_integer", value_int(9));
++ structData.insert(member);
++ paramListP->add(value_struct(structData));
++ paramListP->add(value_nil());
++ paramListP->add(value_i8((xmlrpc_int64)UINT_MAX + 1));
++}
--string const xmlPrologue("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n");
-+namespace {
-+
-+static string const
-+xmlPrologue("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n");
+-class valueTestSuite : public testSuite {
++static void
++verifyParamList(paramList const& paramList,
++ time_t const timeFuture) {
+
-+static string const
-+apacheUrl("http://ws.apache.org/xmlrpc/namespaces/extensions");
++ TEST(paramList.size() == 11);
+
-+static string const
-+xmlnsApache("xmlns:ex=\"" + apacheUrl + "\"");
++ TEST(paramList.getInt(0) == 7);
++ TEST(paramList.getInt(0, 7) == 7);
++ TEST(paramList.getInt(0, -5, 7) == 7);
++ TEST(paramList.getBoolean(1) == true);
++ TEST(paramList.getDouble(2) == 3.14);
++ TEST(paramList.getDouble(2, 1) == 3.14);
++ TEST(paramList.getDouble(2, 1, 4) == 3.14);
++ time_t const timeZero(0);
++ TEST(paramList.getDatetime_sec(3) == timeZero);
++ TEST(paramList.getDatetime_sec(3, paramList::TC_ANY) == timeZero);
++ TEST(paramList.getDatetime_sec(3, paramList::TC_NO_FUTURE)
++ == timeZero);
++ TEST(paramList.getDatetime_sec(4, paramList::TC_NO_PAST)
++ == timeFuture);
++ TEST(paramList.getString(5) == "hello world");
++ TEST(paramList.getBytestring(6)[0] == 0x10);
++ TEST(paramList.getArray(7).size() == 3);
++ TEST(paramList.getArray(7, 3).size() == 3);
++ TEST(paramList.getArray(7, 1, 3).size() == 3);
++ paramList.getStruct(8)["the_integer"];
++ paramList.getNil(9);
++ TEST(paramList.getI8(10) == (xmlrpc_int64)UINT_MAX + 1);
++ paramList.verifyEnd(11);
++}
+
+-public:
+- virtual string suiteName() {
+- return "valueTestSuite";
+- }
+- virtual void runtests(unsigned int const indentation) {
+-
+- intTestSuite().run(indentation+1);
+- doubleTestSuite().run(indentation+1);
+- booleanTestSuite().run(indentation+1);
+- datetimeTestSuite().run(indentation+1);
+- stringTestSuite().run(indentation+1);
+- bytestringTestSuite().run(indentation+1);
+- nilTestSuite().run(indentation+1);
+- i8TestSuite().run(indentation+1);
+- structTestSuite().run(indentation+1);
+- arrayTestSuite().run(indentation+1);
+- }
+-};
--namespace {
- string const noElementFoundXml(
- xmlPrologue +
- "<methodResponse>\r\n"
-@@ -41,6 +49,22 @@ string const noElementFoundXml(
- "</methodResponse>\r\n"
- );
+ class paramListTestSuite : public testSuite {
+@@ -529,60 +314,24 @@ public:
+ }
+ virtual void runtests(unsigned int const) {
-+string const invalidXMLCall(
-+ xmlPrologue +
-+ "<methodResponse>\r\n"
-+ "<fault>\r\n"
-+ "<value><struct>\r\n"
-+ "<member><name>faultCode</name>\r\n"
-+ "<value><i4>-503</i4></value></member>\r\n"
-+ "<member><name>faultString</name>\r\n"
-+ "<value><string>Call XML not a proper XML-RPC call. "
-+ "Call is not valid XML. XML parsing failed</string></value>"
-+ "</member>\r\n"
-+ "</struct></value>\r\n"
-+ "</fault>\r\n"
-+ "</methodResponse>\r\n"
-+ );
++ time_t const timeFuture(time(NULL)+100);
++
+ paramList paramList1;
+ TEST(paramList1.size() == 0);
+
+- paramList1.add(value_int(7));
+- paramList1.add(value_boolean(true));
+- paramList1.add(value_double(3.14));
+- time_t const timeZero(0);
+- paramList1.add(value_datetime(timeZero));
+- time_t const timeFuture(time(NULL)+100);
+- paramList1.add(value_datetime(timeFuture));
+- paramList1.add(value_string("hello world"));
+- unsigned char bytestringArray[] = {0x10, 0x11, 0x12, 0x13, 0x14};
+- vector<unsigned char>
+- bytestringData(&bytestringArray[0], &bytestringArray[4]);
+- paramList1.add(value_bytestring(bytestringData));
+- vector<value> arrayData;
+- arrayData.push_back(value_int(7));
+- arrayData.push_back(value_double(2.78));
+- arrayData.push_back(value_string("hello world"));
+- paramList1.add(value_array(arrayData));
+- map<string, value> structData;
+- pair<string, value> member("the_integer", value_int(9));
+- structData.insert(member);
+- paramList1.add(value_struct(structData));
+- paramList1.add(value_nil());
+- paramList1.add(value_i8((xmlrpc_int64)UINT_MAX + 1));
+-
+- TEST(paramList1.size() == 11);
+-
+- TEST(paramList1.getInt(0) == 7);
+- TEST(paramList1.getInt(0, 7) == 7);
+- TEST(paramList1.getInt(0, -5, 7) == 7);
+- TEST(paramList1.getBoolean(1) == true);
+- TEST(paramList1.getDouble(2) == 3.14);
+- TEST(paramList1.getDouble(2, 1) == 3.14);
+- TEST(paramList1.getDouble(2, 1, 4) == 3.14);
+- TEST(paramList1.getDatetime_sec(3) == 0);
+- TEST(paramList1.getDatetime_sec(3, paramList::TC_ANY) == timeZero);
+- TEST(paramList1.getDatetime_sec(3, paramList::TC_NO_FUTURE)
+- == timeZero);
+- TEST(paramList1.getDatetime_sec(4, paramList::TC_NO_PAST)
+- == timeFuture);
+- TEST(paramList1.getString(5) == "hello world");
+- TEST(paramList1.getBytestring(6)[0] == 0x10);
+- TEST(paramList1.getArray(7).size() == 3);
+- TEST(paramList1.getArray(7, 3).size() == 3);
+- TEST(paramList1.getArray(7, 1, 3).size() == 3);
+- paramList1.getStruct(8)["the_integer"];
+- paramList1.getNil(9);
+- TEST(paramList1.getI8(10) == (xmlrpc_int64)UINT_MAX + 1);
+- paramList1.verifyEnd(11);
++ buildParamListWithAdd(¶mList1, timeFuture);
+
- string const sampleAddGoodCallXml(
- xmlPrologue +
- "<methodCall>\r\n"
-@@ -86,6 +110,24 @@ string const sampleAddBadResponseXml(
- "</methodResponse>\r\n"
- );
++ verifyParamList(paramList1, timeFuture);
-+string const testCallInfoCallXml(
-+ xmlPrologue +
-+ "<methodCall>\r\n"
-+ "<methodName>test.callinfo</methodName>\r\n"
-+ "<params>\r\n"
-+ "</params>\r\n"
-+ "</methodCall>\r\n"
-+ );
+ paramList paramList2(5);
+ TEST(paramList2.size() == 0);
+
-+string const testCallInfoResponseXml(
-+ xmlPrologue +
-+ "<methodResponse>\r\n"
-+ "<params>\r\n"
-+ "<param><value><string>this is a test callInfo</string></value>"
-+ "</param>\r\n"
-+ "</params>\r\n"
-+ "</methodResponse>\r\n"
-+ );
-
- string const nonexistentMethodCallXml(
- xmlPrologue +
-@@ -123,31 +165,30 @@ string const nonexistentMethodNoDefResponseXml(
- "</methodResponse>\r\n"
- );
-
--} // namespace
-
++ paramList2.addc(7);
++ paramList2.addc(true).addc(3.14);
++ TEST(paramList2.size() == 3);
++ TEST(paramList2.getInt(0) == 7);
++ TEST(paramList2.getBoolean(1) == true);
++ TEST(paramList2.getDouble(2) == 3.14);
+ }
+ };
- string const echoI8ApacheCall(
- xmlPrologue +
-- "<methodCall>\r\n"
-+ "<methodCall " + xmlnsApache + ">\r\n"
- "<methodName>echo</methodName>\r\n"
- "<params>\r\n"
-- "<param><value><ex.i8>5</ex.i8></value></param>\r\n"
-+ "<param><value><ex:i8>5</ex:i8></value></param>\r\n"
- "</params>\r\n"
- "</methodCall>\r\n"
- );
+@@ -604,13 +353,13 @@ main(int argc, char**) {
- string const echoI8ApacheResponse(
- xmlPrologue +
-- "<methodResponse>\r\n"
-+ "<methodResponse " + xmlnsApache + ">\r\n"
- "<params>\r\n"
-- "<param><value><ex.i8>5</ex.i8></value></param>\r\n"
-+ "<param><value><ex:i8>5</ex:i8></value></param>\r\n"
- "</params>\r\n"
- "</methodResponse>\r\n"
- );
+ try {
+ // Add your test suites here.
++ base64TestSuite().run(0);
++ xmlTestSuite().run(0);
+ valueTestSuite().run(0);
+ paramListTestSuite().run(0);
+ registryTestSuite().run(0);
+ serverAbyssTestSuite().run(0);
+-#ifndef WIN32
+ serverPstreamTestSuite().run(0);
+-#endif
+ clientTestSuite().run(0);
- string const echoNilApacheCall(
- xmlPrologue +
-- "<methodCall>\r\n"
-+ "<methodCall " + xmlnsApache + ">\r\n"
- "<methodName>echo</methodName>\r\n"
- "<params>\r\n"
- "<param><value><nil/></value></param>\r\n"
-@@ -157,14 +198,26 @@ string const echoNilApacheCall(
+ testXmlRpcCpp();
+diff --git a/libs/xmlrpc-c/src/cpp/test/testclient.cpp b/libs/xmlrpc-c/src/cpp/test/testclient.cpp
+index 6eadf8d..f8a2b3a 100644
+--- a/libs/xmlrpc-c/src/cpp/test/testclient.cpp
++++ b/libs/xmlrpc-c/src/cpp/test/testclient.cpp
+@@ -32,10 +32,12 @@ using namespace std;
- string const echoNilApacheResponse(
- xmlPrologue +
-- "<methodResponse>\r\n"
-+ "<methodResponse " + xmlnsApache + ">\r\n"
- "<params>\r\n"
-- "<param><value><ex.nil/></value></param>\r\n"
-+ "<param><value><ex:nil/></value></param>\r\n"
- "</params>\r\n"
- "</methodResponse>\r\n"
- );
-+class callInfo_test : public callInfo {
-+
-+public:
-+ callInfo_test() : data("this is a test callInfo") {}
-+
-+ callInfo_test(string const& data) : data(data) {};
-+
-+ string data;
-+};
-+
-+
++namespace {
+
class sampleAddMethod : public method {
public:
sampleAddMethod() {
-@@ -186,6 +239,51 @@ public:
-
-
-
-+class sampleAddMethod2 : public method2 {
-+public:
-+ sampleAddMethod2() {
+- this->_signature = "ii";
+ this->_signature = "i:ii";
-+ this->_help = "This method adds two integers together";
-+ }
-+ void
-+ execute(xmlrpc_c::paramList const& paramList,
-+ const callInfo * const,
-+ value * const retvalP) {
-+
-+ int const addend(paramList.getInt(0));
-+ int const adder(paramList.getInt(1));
-+
-+ paramList.verifyEnd(2);
-+
-+ *retvalP = value_int(addend + adder);
-+ }
-+};
-+
-+
-+
-+class testCallInfoMethod : public method2 {
-+public:
-+ testCallInfoMethod() {
-+ this->_signature = "s:";
-+ }
-+ void
-+ execute(xmlrpc_c::paramList const& paramList,
-+ const callInfo * const callInfoPtr,
-+ value * const retvalP) {
-+
-+ const callInfo_test * const callInfoP(
-+ dynamic_cast<const callInfo_test *>(callInfoPtr));
-+
-+ TEST(callInfoP != NULL);
-+
-+ paramList.verifyEnd(0);
-+
-+ *retvalP = value_string(callInfoP->data);
-+ }
-+};
-+
-+
-+
- class nameMethod : public defaultMethod {
-
+ this->_help = "This method adds two integers together";
+ }
void
-@@ -213,6 +311,22 @@ public:
-
-
+@@ -78,7 +80,15 @@ public:
-+static void
-+testEmptyXmlDocCall(xmlrpc_c::registry const& myRegistry) {
-+
-+ string response;
-+ myRegistry.processCall("", &response);
-+
-+#ifdef INTERNAL_EXPAT
-+ TEST(response == noElementFoundXml);
-+#else
-+ // This is what we get with libxml2
-+ TEST(response == invalidXMLCall);
-+#endif
-+}
-+
-+
-+
- class registryRegMethodTestSuite : public testSuite {
- public:
-@@ -227,11 +341,7 @@ public:
- xmlrpc_c::methodPtr(new sampleAddMethod));
-
- myRegistry.disableIntrospection();
-- {
-- string response;
-- myRegistry.processCall("", &response);
-- TEST(response == noElementFoundXml);
-- }
-+ testEmptyXmlDocCall(myRegistry);
- {
- string response;
- myRegistry.processCall(sampleAddGoodCallXml, &response);
-@@ -242,6 +352,12 @@ public:
- myRegistry.processCall(sampleAddBadCallXml, &response);
- TEST(response == sampleAddBadResponseXml);
- }
-+ {
-+ string response;
-+ callInfo const callInfo;
-+ myRegistry.processCall(sampleAddBadCallXml, &callInfo, &response);
-+ TEST(response == sampleAddBadResponseXml);
-+ }
- }
- };
+ class clientXmlTransport_direct : public clientXmlTransport {
++/*----------------------------------------------------------------------------
++ Though this fills the shoes of a client XML transport, it's really a
++ simulation, because it doesn't transport anything anywhere. The call()
++ method, which is supposed to transport a call to a server and then
++ transport the response back, actually just executes the method itself.
-@@ -284,6 +400,93 @@ public:
++ Part of a carriage parameter for a transport of this class is the handle
++ of a method registry, so the transport knows how to execute the method.
++-----------------------------------------------------------------------------*/
+ public:
+ void
+ call(xmlrpc_c::carriageParm * const carriageParmP,
+@@ -158,6 +168,64 @@ public:
-+class method2TestSuite : public testSuite {
++class MyRpc : public rpc {
+
+public:
-+ virtual string suiteName() {
-+ return "method2TestSuite";
-+ }
-+ virtual void runtests(unsigned int const) {
++ MyRpc(std::string const methodName,
++ paramList const& paramList) :
++ rpc(methodName, paramList) {}
+
-+ xmlrpc_c::registry myRegistry;
-+
-+ myRegistry.addMethod("sample.add",
-+ xmlrpc_c::methodPtr(new sampleAddMethod2));
-+
-+ myRegistry.addMethod("test.callinfo",
-+ xmlrpc_c::methodPtr(new testCallInfoMethod));
-+
-+ {
-+ string response;
-+ myRegistry.processCall(sampleAddGoodCallXml, &response);
-+ TEST(response == sampleAddGoodResponseXml);
-+ }
-+ {
-+ string response;
-+ myRegistry.processCall(sampleAddBadCallXml, &response);
-+ TEST(response == sampleAddBadResponseXml);
-+ }
-+ {
-+ string response;
-+ callInfo_test const callInfo;
-+ myRegistry.processCall(testCallInfoCallXml, &callInfo, &response);
-+ TEST(response == testCallInfoResponseXml);
-+ }
++ void
++ progress(struct xmlrpc_progress_data const& data) const {
++
++ // The way the tests are currently written, this never actually
++ // runs; we're just testing for ability to compile.
++
++ cout << "Progress of " << this << ": "
++ << data.call.total << " "
++ << data.call.now << " "
++ << data.response.total << " "
++ << data.response.now
++ << endl;
+ }
+};
+
+
+
-+class dialectTestSuite : public testSuite {
-+
++class clientDerivedRpcTestSuite : public testSuite {
++/*----------------------------------------------------------------------------
++ The object of this class tests the ability to derive a class
++ from xmlrpc_c::rpc in order to override certain methods.
++-----------------------------------------------------------------------------*/
+public:
+ virtual string suiteName() {
-+ return "dialectTestSuite";
++ return "clientDerivedRpcTestSuite";
+ }
-+ virtual void runtests(unsigned int const) {
-+
++ virtual void runtests(unsigned int const ) {
+ registry myRegistry;
-+ string response;
+
+ myRegistry.addMethod("sample.add", methodPtr(new sampleAddMethod));
-+ myRegistry.addMethod("echo", methodPtr(new echoMethod));
-+
-+ myRegistry.setDialect(xmlrpc_dialect_i8);
-+
-+ myRegistry.setDialect(xmlrpc_dialect_apache);
-+
-+ myRegistry.processCall(echoI8ApacheCall, &response);
-+
-+ TEST(response == echoI8ApacheResponse);
-+
-+ myRegistry.processCall(echoNilApacheCall, &response);
-+
-+ TEST(response == echoNilApacheResponse);
-+
-+ EXPECT_ERROR( // invalid dialect
-+ myRegistry.setDialect(static_cast<xmlrpc_dialect>(300));
-+ );
-+ }
-+};
-+
-+
-+
-+class testShutdown : public xmlrpc_c::registry::shutdown {
-+/*----------------------------------------------------------------------------
-+ This class is logically local to
-+ registryShutdownTestSuite::runtests(), but if we declare it that
-+ way, gcc 2.95.3 fails with some bogus messages about undefined
-+ references from random functions when we do that.
-+-----------------------------------------------------------------------------*/
-+public:
-+ void doit(string const&,
-+ void * const) const {
+
++ carriageParm_direct carriageParmDirect(&myRegistry);
++ clientXmlTransport_direct transportDirect;
++ client_xml clientDirect(&transportDirect);
++ paramList paramListSampleAdd;
++ paramListSampleAdd.add(value_int(5));
++ paramListSampleAdd.add(value_int(7));
++ {
++ /* Test a successful RPC */
++ rpcPtr rpcSampleAddP(new MyRpc("sample.add", paramListSampleAdd));
++ rpcSampleAddP->call(&clientDirect, &carriageParmDirect);
++ TEST(rpcSampleAddP->isFinished());
++ TEST(rpcSampleAddP->isSuccessful());
++ value_int const resultDirect(rpcSampleAddP->getResult());
++ TEST(static_cast<int>(resultDirect) == 12);
++ }
+ }
+};
+
+
+
- class registryShutdownTestSuite : public testSuite {
-
- public:
-@@ -294,15 +497,7 @@ public:
-
- xmlrpc_c::registry myRegistry;
-
-- class myshutdown : public xmlrpc_c::registry::shutdown {
-- public:
-- void doit(string const&,
-- void * const) const {
--
-- }
-- };
--
-- myshutdown shutdown;
-+ testShutdown shutdown;
+ class clientDirectTestSuite : public testSuite {
+ /*----------------------------------------------------------------------------
+ The object of this class tests the client facilities by using a
+@@ -241,6 +309,8 @@ public:
+ // Same as above
- myRegistry.setShutdown(&shutdown);
+ clientDirectAsyncTestSuite().run(indentation+1);
++
++ clientDerivedRpcTestSuite().run(indentation+1);
}
-@@ -310,6 +505,10 @@ public:
+ };
+
+@@ -263,6 +333,7 @@ public:
+ .network_interface("eth0")
+ .no_ssl_verifypeer(true)
+ .no_ssl_verifyhost(true)
++ .dont_advertise(true)
+ .user_agent("my user agent")
+ .ssl_cert("/etc/sslcert")
+ .sslcerttype("PEM")
+@@ -278,6 +349,10 @@ public:
+ .randomfile("/dev/random")
+ .egdsocket("/tmp/egdsocket")
+ .ssl_cipher_list("RC4-SHA:DEFAULT")
++ .proxy("example.com")
++ .proxy_port(8080)
++ .proxy_userpwd("password")
++ .proxy_type(XMLRPC_HTTPPROXY_SOCKS5)
+ );
+
+ clientXmlTransport_curl transport5(
+@@ -831,6 +906,10 @@ public:
+
+
string
- registryTestSuite::suiteName() {
- return "registryTestSuite";
-@@ -327,32 +526,19 @@ registryTestSuite::runtests(unsigned int const indentation) {
- }
-
- registryRegMethodTestSuite().run(indentation+1);
-+
- registryDefaultMethodTestSuite().run(indentation+1);
-
-- registry myRegistry;
--
-- myRegistry.addMethod("sample.add", methodPtr(new sampleAddMethod));
-- myRegistry.addMethod("echo", methodPtr(new echoMethod));
-+ method2TestSuite().run(indentation+1);
-
-- string response;
-+ registry myRegistry;
-
- myRegistry.disableIntrospection();
-
-- myRegistry.setDialect(xmlrpc_dialect_i8);
--
-- myRegistry.setDialect(xmlrpc_dialect_apache);
-+ dialectTestSuite().run(indentation+1);
-
- registryShutdownTestSuite().run(indentation+1);
-
-- myRegistry.processCall(echoI8ApacheCall, &response);
--
-- TEST(response == echoI8ApacheResponse);
--
-- myRegistry.processCall(echoNilApacheCall, &response);
--
-- TEST(response == echoNilApacheResponse);
-+ TEST(myRegistry.maxStackSize() >= 256);
-
-- EXPECT_ERROR( // invalid dialect
-- myRegistry.setDialect(static_cast<xmlrpc_dialect>(300));
-- );
- }
-diff --git a/libs/xmlrpc-c/src/cpp/test/server_abyss.cpp b/libs/xmlrpc-c/src/cpp/test/server_abyss.cpp
-index 4b236ef..2b50688 100644
---- a/libs/xmlrpc-c/src/cpp/test/server_abyss.cpp
-+++ b/libs/xmlrpc-c/src/cpp/test/server_abyss.cpp
-@@ -10,6 +10,8 @@
- #include <vector>
- #include <sstream>
- #include <memory>
+ clientTestSuite::suiteName() {
+ return "clientTestSuite";
+diff --git a/libs/xmlrpc-c/src/cpp/test/value.cpp b/libs/xmlrpc-c/src/cpp/test/value.cpp
+new file mode 100644
+index 0000000..f8d8e3f
+--- /dev/null
++++ b/libs/xmlrpc-c/src/cpp/test/value.cpp
+@@ -0,0 +1,453 @@
++#include <string>
++#include <iostream>
++#include <iomanip>
++#include <vector>
++#include <sstream>
++#include <memory>
+#include <cstring>
-+#include <cstdlib>
- #include <time.h>
- #ifdef WIN32
- #include <winsock.h>
-@@ -17,6 +19,7 @@
- #include <sys/unistd.h>
- #include <sys/socket.h>
- #include <arpa/inet.h>
-+ #include <netinet/in.h>
- #endif
-
- #include "xmlrpc-c/girerr.hpp"
-@@ -34,6 +37,9 @@ using namespace xmlrpc_c;
- using namespace std;
-
-
++#include <time.h>
++
++#include "xmlrpc-c/girerr.hpp"
++using girerr::error;
++#include "transport_config.h"
++#include "xmlrpc-c/base.hpp"
++#include "xmlrpc-c/oldcppwrapper.hpp"
++#include "xmlrpc-c/registry.hpp"
++#include "c_util.h"
+
-+namespace {
++#include "tools.hpp"
+
- static void
- closesock(int const fd) {
- #ifdef WIN32
-@@ -75,7 +81,7 @@ public:
- closesock(this->fd);
- }
-
-- int fd;
-+ XMLRPC_SOCKET fd;
- };
-
-
-@@ -259,6 +265,10 @@ public:
- .timeout(20)
- .dontAdvertise(true)
- .uriPath("/xmlrpc")
-+ .chunkResponse(true)
-+ .allowOrigin("*")
-+ .serverOwnsSignals(false)
-+ .expectSigchld(true)
- );
-
- }
-@@ -274,6 +284,54 @@ public:
-
-
-
-+class testCallInfoMethod : public method2 {
-+public:
-+ void
-+ execute(paramList const& paramList,
-+ const callInfo * const callInfoPtr,
-+ value * const retvalP) {
++#include "value.hpp"
++
++using namespace xmlrpc_c;
++using namespace std;
+
-+ const callInfo_serverAbyss * const callInfoP(
-+ dynamic_cast<const callInfo_serverAbyss *>(callInfoPtr));
+
-+ TEST(callInfoP != NULL);
-+
-+ paramList.verifyEnd(0);
+
-+ TEST(callInfoP->serverAbyssP != NULL);
-+ TEST(callInfoP->abyssSessionP != NULL);
-+
-+ *retvalP = value_nil();
++namespace {
++
++class intTestSuite : public testSuite {
++public:
++ virtual string suiteName() {
++ return "intTestSuite";
++ }
++ virtual void runtests(unsigned int const) {
++ value_int int1(7);
++ TEST(static_cast<int>(int1) == 7);
++ value_int int2(-7);
++ TEST(static_cast<int>(int2) == -7);
++ value val1(int1);
++ TEST(val1.type() == value::TYPE_INT);
++ value_int int3(val1);
++ TEST(static_cast<int>(int3) == 7);
++ try {
++ value_int int4(value_double(3.7));
++ TEST_FAILED("invalid cast double-int suceeded");
++ } catch (error) {}
++
++ value const int1x(toValue(7));
++ TEST(int1x.type() == value::TYPE_INT);
++ TEST(static_cast<int>(value_int(int1x)) == 7);
++
++ int test1x;
++ fromValue(test1x, int1x);
++ TEST(test1x == 7);
+ }
+};
+
+
+
-+class callInfoTestSuite : public testSuite {
-+
++class doubleTestSuite : public testSuite {
+public:
+ virtual string suiteName() {
-+ return "callInfoTestSuite";
++ return "doubleTestSuite";
+ }
+ virtual void runtests(unsigned int const) {
-+
-+ registry myRegistry;
-+
-+ myRegistry.addMethod("sample.add", methodPtr(new testCallInfoMethod));
-+
-+ serverAbyss abyssServer(serverAbyss::constrOpt()
-+ .registryP(&myRegistry)
-+ .portNumber(12345)
-+ );
++ value_double double1(3.14);
++ TEST(static_cast<double>(double1) == 3.14);
++ value val1(double1);
++ TEST(val1.type() == value::TYPE_DOUBLE);
++ value_double double2(val1);
++ TEST(static_cast<double>(double2) == 3.14);
++ try {
++ value_double double4(value_int(4));
++ TEST_FAILED("invalid cast int-double suceeded");
++ } catch (error) {}
++
++ value const double1x(toValue(3.14));
++ TEST(double1x.type() == value::TYPE_DOUBLE);
++ TEST(static_cast<double>(value_double(double1x)) == 3.14);
++
++ double test1x;
++ fromValue(test1x, double1x);
++ TEST(test1x == 3.14);
+ }
+};
+
+
+
-+} // unnamed namespace
++class booleanTestSuite : public testSuite {
++public:
++ virtual string suiteName() {
++ return "booleanTestSuite";
++ }
++ virtual void runtests(unsigned int const) {
++ value_boolean boolean1(true);
++ TEST(static_cast<bool>(boolean1) == true);
++ value_boolean boolean2(false);
++ TEST(static_cast<bool>(boolean2) == false);
++ value val1(boolean1);
++ TEST(val1.type() == value::TYPE_BOOLEAN);
++ value_boolean boolean3(val1);
++ TEST(static_cast<bool>(boolean3) == true);
++ try {
++ value_boolean boolean4(value_int(4));
++ TEST_FAILED("invalid cast int-boolean suceeded");
++ } catch (error) {}
++
++ value const boolean1x(toValue(true));
++ TEST(boolean1x.type() == value::TYPE_BOOLEAN);
++ TEST(static_cast<bool>(value_boolean(boolean1x)) == true);
++
++ bool test1x;
++ fromValue(test1x, boolean1x);
++ TEST(test1x == true);
++ }
++};
+
+
+
- string
- serverAbyssTestSuite::suiteName() {
- return "serverAbyssTestSuite";
-@@ -289,4 +347,5 @@ serverAbyssTestSuite::runtests(unsigned int const indentation) {
-
- createTestSuite().run(indentation+1);
-
-+ callInfoTestSuite().run(indentation+1);
- }
-diff --git a/libs/xmlrpc-c/src/cpp/test/server_pstream.cpp b/libs/xmlrpc-c/src/cpp/test/server_pstream.cpp
-index 83b3e88..1d93273 100644
---- a/libs/xmlrpc-c/src/cpp/test/server_pstream.cpp
-+++ b/libs/xmlrpc-c/src/cpp/test/server_pstream.cpp
-@@ -4,16 +4,37 @@
- Test the pstream server C++ facilities of XML-RPC for C/C++.
-
- =============================================================================*/
--#include <unistd.h>
--#include <sys/socket.h>
--#include <arpa/inet.h>
++#if XMLRPC_HAVE_TIMEVAL
+
-+#include "xmlrpc_config.h"
++static struct timeval
++makeTv(time_t const secs,
++ unsigned int const usecs) {
+
-+#if MSVCRT
-+ #include <winsock2.h>
-+ #include <io.h>
-+#else
-+ #include <unistd.h>
-+ #include <sys/socket.h>
-+ #include <arpa/inet.h>
-+#endif
++ struct timeval retval;
+
- #include <errno.h>
- #include <string>
-+#include <cstring>
- #include <fcntl.h>
-
-+#include "xmlrpc-c/config.h"
++ retval.tv_sec = secs;
++ retval.tv_usec = usecs;
+
-+#if MSVCRT
-+ int
-+ xmlrpc_win32_socketpair(int const domain,
-+ int const type,
-+ int const protocol,
-+ SOCKET socks[2]);
++ return retval;
++}
++
++static bool
++tvIsEqual(struct timeval const comparand,
++ struct timeval const comparator) {
++ return
++ comparand.tv_sec == comparator.tv_sec &&
++ comparand.tv_usec == comparator.tv_usec;
++}
+#endif
+
- #include "xmlrpc-c/girerr.hpp"
- using girerr::error;
- using girerr::throwf;
-+#include "xmlrpc-c/sleep_int.h"
- #include "xmlrpc-c/base.hpp"
- #include "xmlrpc-c/registry.hpp"
- #include "xmlrpc-c/server_pstream.hpp"
-@@ -25,6 +46,41 @@ using namespace xmlrpc_c;
- using namespace std;
-
-
-+namespace {
+
-+static void
-+setNonBlocking(XMLRPC_SOCKET const socket) {
-+
-+#if MSVCRT
-+ u_long iMode = 1;
-+ ioctlsocket(socket, FIONBIO, &iMode);
-+#else
-+ fcntl(socket, F_SETFL, O_NONBLOCK);
-+#endif
-+}
+
++#if XMLRPC_HAVE_TIMESPEC
+
++static struct timespec
++makeTs(time_t const secs,
++ unsigned int const usecs) {
+
-+#define ESC_STR "\x1B"
++ struct timespec retval;
+
++ retval.tv_sec = secs;
++ retval.tv_nsec = usecs * 1000;
+
-+static string const
-+xmlPrologue("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n");
++ return retval;
++}
+
-+static string const
-+packetStart(ESC_STR "PKT");
++static bool
++tsIsEqual(struct timespec const comparand,
++ struct timespec const comparator) {
++ return
++ comparand.tv_sec == comparator.tv_sec &&
++ comparand.tv_nsec == comparator.tv_nsec;
++}
++#endif
+
-+static string const
-+packetEnd(ESC_STR "END");
+
+
-+class callInfo_test : public callInfo {
++class datetimeTestSuite : public testSuite {
+public:
-+ callInfo_test() : info("this is a test") {}
-+ string const info;
++ virtual string suiteName() {
++ return "datetimeTestSuite";
++ }
++ virtual void runtests(unsigned int const) {
++ time_t const testTime(900684535);
++ value_datetime datetime1("19980717T14:08:55");
++ TEST(static_cast<time_t>(datetime1) == testTime);
++ value_datetime datetime2(testTime);
++ TEST(static_cast<time_t>(datetime2) == testTime);
++ value val1(datetime1);
++ TEST(val1.type() == value::TYPE_DATETIME);
++ value_datetime datetime3(val1);
++ TEST(static_cast<time_t>(datetime3) == testTime);
++#if XMLRPC_HAVE_TIMEVAL
++ struct timeval const testTimeTv(makeTv(testTime, 0));
++ value_datetime datetime4(testTimeTv);
++ TEST(static_cast<time_t>(datetime4) == testTime);
++ TEST(tvIsEqual(static_cast<timeval>(datetime4), testTimeTv));
++#endif
++#if XMLRPC_HAVE_TIMESPEC
++ struct timespec const testTimeTs(makeTs(testTime, 0));
++ value_datetime datetime5(testTimeTs);
++ TEST(static_cast<time_t>(datetime5) == testTime);
++ TEST(tsIsEqual(static_cast<timespec>(datetime5), testTimeTs));
++#endif
++ try {
++ value_datetime datetime4(value_int(4));
++ TEST_FAILED("invalid cast int-datetime suceeded");
++ } catch (error) {}
++ }
+};
+
+
-
- class sampleAddMethod : public method {
- public:
-@@ -45,51 +101,542 @@ public:
- }
- };
-
-+string const sampleAddCallXml(
-+ xmlPrologue +
-+ "<methodCall>\r\n"
-+ "<methodName>sample.add</methodName>\r\n"
-+ "<params>\r\n"
-+ "<param><value><i4>5</i4></value></param>\r\n"
-+ "<param><value><i4>7</i4></value></param>\r\n"
-+ "</params>\r\n"
-+ "</methodCall>\r\n"
-+ );
-+
-+string const sampleAddResponseXml(
-+ xmlPrologue +
-+ "<methodResponse>\r\n"
-+ "<params>\r\n"
-+ "<param><value><i4>12</i4></value></param>\r\n"
-+ "</params>\r\n"
-+ "</methodResponse>\r\n"
-+ );
-+
-+
-+class testCallInfoMethod : public method2 {
+
++class stringTestSuite : public testSuite {
+public:
-+ virtual void
-+ execute(paramList const& paramList,
-+ const callInfo * const callInfoPtr,
-+ value * const retvalP) {
-+
-+ const callInfo_test * const callInfoP(
-+ dynamic_cast<const callInfo_test *>(callInfoPtr));
-+
-+ TEST(callInfoP != NULL);
-+
-+ paramList.verifyEnd(0);
-+
-+ TEST(callInfoP->info == string("this is a test"));
-+
-+ *retvalP = value_nil();
++ virtual string suiteName() {
++ return "stringTestSuite";
++ }
++ virtual void runtests(unsigned int const) {
++ value_string string1("hello world");
++ TEST(static_cast<string>(string1) == "hello world");
++ value_string string2("embedded\0null");
++ TEST(static_cast<string>(string2) == "embedded\0null");
++ value val1(string1);
++ TEST(val1.type() == value::TYPE_STRING);
++ value_string string3(val1);
++ TEST(static_cast<string>(string3) == "hello world");
++ try {
++ value_string string4(value_int(4));
++ TEST_FAILED("invalid cast int-string succeeded");
++ } catch (error) {}
++ value_string string5("hello world", value_string::nlCode_all);
++ TEST(static_cast<string>(string5) == "hello world");
++ value_string string6("hello\nthere\rworld\r\n\n",
++ value_string::nlCode_all);
++ TEST(static_cast<string>(string6) == "hello\nthere\nworld\n\n");
++ TEST(string6.crlfValue() == "hello\r\nthere\r\nworld\r\n\r\n");
++ value_string string7("hello\nthere\rworld\r\n\n",
++ value_string::nlCode_lf);
++ TEST(static_cast<string>(string7) == "hello\nthere\rworld\r\n\n");
++
++ value const string1x(toValue("hello world"));
++ TEST(string1x.type() == value::TYPE_STRING);
++ TEST(static_cast<string>(value_string(string1x)) == "hello world");
++
++ string test1x;
++ fromValue(test1x, string1x);
++ TEST(test1x == "hello world");
++
++ value const string2x(toValue(string("hello world")));
++ TEST(string2x.type() == value::TYPE_STRING);
++ TEST(static_cast<string>(value_string(string2x)) == "hello world");
+ }
+};
+
-+string const testCallInfoCallXml(
-+ xmlPrologue +
-+ "<methodCall>\r\n"
-+ "<methodName>test.callinfo</methodName>\r\n"
-+ "<params>\r\n"
-+ "</params>\r\n"
-+ "</methodCall>\r\n"
-+ );
+
-+string const testCallInfoResponseXml(
-+ xmlPrologue +
-+ "<methodResponse>\r\n"
-+ "<params>\r\n"
-+ "<param><value><nil/></value>"
-+ "</param>\r\n"
-+ "</params>\r\n"
-+ "</methodResponse>\r\n"
-+ );
+
-
-
- static void
--createTestFile(string const& contents,
-- int * const fdP) {
-+waitForNetworkTransport() {
-+/*----------------------------------------------------------------------------
-+ Wait for a message to travel through the network.
++class bytestringTestSuite : public testSuite {
++public:
++ virtual string suiteName() {
++ return "bytestringTestSuite";
++ }
++ virtual void runtests(unsigned int const) {
++ unsigned char bytestringArray[] = {0x10, 0x11, 0x12, 0x13, 0x14};
++ cbytestring
++ bytestringData(&bytestringArray[0], &bytestringArray[4]);
++ value_bytestring bytestring1(bytestringData);
++
++ cbytestring const dataReadBack1(bytestring1.vectorUcharValue());
++ TEST(dataReadBack1 == bytestringData);
++ value val1(bytestring1);
++ TEST(val1.type() == value::TYPE_BYTESTRING);
++ value_bytestring bytestring2(val1);
++ vector<unsigned char> const dataReadBack2(
++ bytestring2.vectorUcharValue());
++ TEST(dataReadBack2 == bytestringData);
++ try {
++ value_bytestring bytestring4(value_int(4));
++ TEST_FAILED("invalid cast int-bytestring suceeded");
++ } catch (error) {}
++
++ value const bytestring1x(toValue(bytestringData));
++ TEST(bytestring1x.type() == value::TYPE_BYTESTRING);
++ vector<unsigned char> const dataReadBack1x(
++ value_bytestring(bytestring1x).vectorUcharValue());
++ TEST(dataReadBack1x == bytestringData);
++
++ vector<unsigned char> test1x;
++ fromValue(test1x, bytestring1x);
++ TEST(test1x == bytestringData);
+
-+ This is part of our hack to allow us to test client/server communication
-+ without the bother of a separate thread for each. One party writes
-+ to a socket, causing the OS to buffer the message, then the other party
-+ reads from the socket, getting the buffered message. We never wait
-+ to send or receive, because with only one thread to do both, we would
-+ deadlock. Instead, we just count on the buffer being big enough.
++ }
++};
+
-+ But on some systems, the message doesn't immediately travel like this. It
-+ takes action by an independent thread (provided by the OS) to move the
-+ message. In particular, we've seen this behavior on Windows (2010.10).
+
-+ So we just sleep for a small amount of time to let the message move.
-+-----------------------------------------------------------------------------*/
+
-+ // xmlrpc_millisecond_sleep() is allowed to return early, and on Windows
-+ // it does that in preference to returning late insofar as the clock
-+ // resolution doesn't allow returning at the exact time. It is rumored
-+ // that Windows clock period may be as long as 40 milliseconds.
++class nilTestSuite : public testSuite {
++public:
++ virtual string suiteName() {
++ return "nilTestSuite";
++ }
++ virtual void runtests(unsigned int const) {
++ value_nil nil1;
++ value val1(nil1);
++ TEST(val1.type() == value::TYPE_NIL);
++ value_nil nil2(val1);
++ try {
++ value_nil nil4(value_int(4));
++ TEST_FAILED("invalid cast int-nil suceeded");
++ } catch (error) {}
++ }
++};
+
-+ xmlrpc_millisecond_sleep(50);
-+}
-
-- string const filename("/tmp/xmlrpc_test_pstream");
-- unlink(filename.c_str());
-- int rc;
-- rc = open(filename.c_str(), O_RDWR | O_CREAT);
-- unlink(filename.c_str());
+
+
-+class client {
-+/*----------------------------------------------------------------------------
-+ This is an object you can use as a client to test a packet stream
-+ server.
++class i8TestSuite : public testSuite {
++public:
++ virtual string suiteName() {
++ return "i8TestSuite";
++ }
++ virtual void runtests(unsigned int const) {
++ value_i8 int1(7);
++ TEST(static_cast<xmlrpc_int64>(int1) == 7);
++ value_i8 int2(-7);
++ TEST(static_cast<xmlrpc_int64>(int2) == -7);
++ value_i8 int5(1ull << 40);
++ TEST(static_cast<xmlrpc_int64>(int5) == (1ull << 40));
++ value val1(int1);
++ TEST(val1.type() == value::TYPE_I8);
++ value_i8 int3(val1);
++ TEST(static_cast<xmlrpc_int64>(int3) == 7);
++ try {
++ value_i8 int4(value_double(3.7));
++ TEST_FAILED("invalid cast double-i8 suceeded");
++ } catch (error) {}
++ }
++};
+
-+ You attach the 'serverFd' member to your packet stream server, then
-+ call the 'sendCall' method to send a call to your server, then call
-+ the 'recvResp' method to get the response.
+
-+ Destroying the object closes the connection.
+
-+ We rely on typical, though unguaranteed socket function: we need to
-+ be able to write 'contents' to the socket in a single write()
-+ system call before the other side reads anything -- i.e. the socket
-+ has to have a buffer that big. We do this because we're lazy; doing
-+ it right would require forking a writer process.
-+-----------------------------------------------------------------------------*/
++class structTestSuite : public testSuite {
+public:
++ virtual string suiteName() {
++ return "structTestSuite";
++ }
++ virtual void runtests(unsigned int const) {
++ cstruct structData;
++ pair<string, value> member("the_integer", value_int(9));
++ structData.insert(member);
++
++ value_struct struct1(structData);
+
-+ client();
-
-+ ~client();
++ map<string, value> dataReadBack(struct1);
+
-+ void
-+ sendCall(string const& callBytes) const;
++ TEST(static_cast<int>(value_int(dataReadBack["the_integer"])) == 9);
+
-+ void
-+ hangup();
++ value val1(struct1);
++ TEST(val1.type() == value::TYPE_STRUCT);
++ value_struct struct2(val1);
++ try {
++ value_struct struct4(value_int(4));
++ TEST_FAILED("invalid cast int-struct suceeded");
++ } catch (error) {}
+
-+ void
-+ recvResp(string * const respBytesP) const;
++ map<string, int> structDatax;
++ structDatax["one"] = 1;
++ structDatax["two"] = 2;
+
-+ int serverFd;
++ value const struct5(toValue(structDatax));
++ TEST(struct5.type() == value::TYPE_STRUCT);
++ map<string, value> dataReadBackx;
++ dataReadBackx = value_struct(struct5);
+
-+private:
++ TEST(static_cast<int>(value_int(dataReadBackx["two"])) == 2);
+
-+ int clientFd;
++ map<string, int> test5x;
++ fromValue(test5x, struct5);
++ TEST(test5x["two"] == 2);
++ }
+};
+
+
+
-+client::client() {
++class arrayTestSuite : public testSuite {
++public:
++ virtual string suiteName() {
++ return "arrayTestSuite";
++ }
++ virtual void runtests(unsigned int const) {
++ carray arrayData;
++ arrayData.push_back(value_int(7));
++ arrayData.push_back(value_double(2.78));
++ arrayData.push_back(value_string("hello world"));
++ value_array array1(arrayData);
++
++ TEST(array1.size() == 3);
++ vector<value> dataReadBack1(array1.vectorValueValue());
++ TEST(dataReadBack1[0].type() == value::TYPE_INT);
++ TEST(static_cast<int>(value_int(dataReadBack1[0])) == 7);
++ TEST(dataReadBack1[1].type() == value::TYPE_DOUBLE);
++ TEST(static_cast<double>(value_double(dataReadBack1[1])) == 2.78);
++ TEST(dataReadBack1[2].type() == value::TYPE_STRING);
++ TEST(static_cast<string>(value_string(dataReadBack1[2])) ==
++ "hello world");
++
++ value val1(array1);
++ TEST(val1.type() == value::TYPE_ARRAY);
++ value_array array2(val1);
++ TEST(array2.size() == 3);
++ try {
++ value_array array4(value_int(4));
++ TEST_FAILED("invalid cast int-array suceeded");
++ } catch (error) {}
++
++ int const arrayDatax[] = {7, 4};
++
++ value const array5(
++ arrayValueArray(arrayDatax, ARRAY_SIZE(arrayDatax)));
++ TEST(array5.type() == value::TYPE_ARRAY);
++ TEST(value_array(array5).size() == 2);
++ vector<value> dataReadBackx(value_array(array5).vectorValueValue());
++
++ TEST(dataReadBackx.size() == 2);
++ TEST(static_cast<int>(value_int(dataReadBackx[0])) == 7);
++ vector<int> test5x;
++ fromValue(test5x, array5);
++ TEST(test5x[1] == 4);
++
++ vector<string> arrayDataVec;
++ arrayDataVec.push_back("hello world");
++ value const array6(toValue(arrayDataVec));
++ TEST(array6.type() == value::TYPE_ARRAY);
++ TEST(value_array(array6).size() == 1);
++ }
++};
+
-+ enum {
-+ SERVER = 0,
-+ CLIENT = 1,
-+ };
-+ XMLRPC_SOCKET sockets[2];
-+ int rc;
+
-+ rc = XMLRPC_SOCKETPAIR(AF_UNIX, SOCK_STREAM, 0, sockets);
++} // unnamed namespace
+
- if (rc < 0)
-- throwf("Failed to create file '%s' as a test tool. errno=%d (%s)",
-- filename.c_str(), errno, strerror(errno));
-+ throwf("Failed to create UNIX domain stream socket pair "
-+ "as test tool. errno=%d (%s)",
-+ errno, strerror(errno));
- else {
-- int const fd(rc);
-+ setNonBlocking(sockets[CLIENT]);
-
-- int rc;
--
-- rc = write(fd, contents.c_str(), contents.length());
--
-- if (rc < 0)
-- throwf("write() of test file failed, errno=%d (%s)",
-- errno, strerror(errno));
-- else {
-- unsigned int bytesWritten(rc);
--
-- if (bytesWritten != contents.length())
-- throwf("Short write");
-- else {
-- int rc;
-- rc = lseek(fd, 0, SEEK_SET);
--
-- if (rc < 0)
-- throwf("lseek(0) of test file failed, errno=%d (%s)",
-- errno, strerror(errno));
-- }
-- }
-- *fdP = fd;
-+ this->serverFd = sockets[SERVER];
-+ this->clientFd = sockets[CLIENT];
- }
- }
-
-
-
-+client::~client() {
+
-+ XMLRPC_CLOSESOCKET(this->clientFd);
-+ XMLRPC_CLOSESOCKET(this->serverFd);
++string
++valueTestSuite::suiteName() {
++ return "valueTestSuite";
+}
+
+
+
+void
-+client::sendCall(string const& packetBytes) const {
++valueTestSuite::runtests(unsigned int const indentation) {
++
++ intTestSuite().run(indentation+1);
++ doubleTestSuite().run(indentation+1);
++ booleanTestSuite().run(indentation+1);
++ datetimeTestSuite().run(indentation+1);
++ stringTestSuite().run(indentation+1);
++ bytestringTestSuite().run(indentation+1);
++ nilTestSuite().run(indentation+1);
++ i8TestSuite().run(indentation+1);
++ structTestSuite().run(indentation+1);
++ arrayTestSuite().run(indentation+1);
++}
+diff --git a/libs/xmlrpc-c/src/cpp/test/value.hpp b/libs/xmlrpc-c/src/cpp/test/value.hpp
+new file mode 100644
+index 0000000..65d0d90
+--- /dev/null
++++ b/libs/xmlrpc-c/src/cpp/test/value.hpp
+@@ -0,0 +1,9 @@
++#include "tools.hpp"
+
-+ int rc;
++class valueTestSuite : public testSuite {
+
-+ rc = send(this->clientFd, packetBytes.c_str(), packetBytes.length(), 0);
++public:
++ virtual std::string suiteName();
++ virtual void runtests(unsigned int const indentation);
++};
+
-+ waitForNetworkTransport();
+diff --git a/libs/xmlrpc-c/src/cpp/test/xml.cpp b/libs/xmlrpc-c/src/cpp/test/xml.cpp
+new file mode 100644
+index 0000000..0a73e24
+--- /dev/null
++++ b/libs/xmlrpc-c/src/cpp/test/xml.cpp
+@@ -0,0 +1,100 @@
++/*=============================================================================
++ xml
++===============================================================================
++ Test the XML generator and parser C++ facilities of XML-RPC for C/C++.
++
++=============================================================================*/
+
-+ if (rc < 0)
-+ throwf("send() of test data to socket failed, errno=%d (%s)",
-+ errno, strerror(errno));
-+ else {
-+ unsigned int bytesWritten(rc);
++#include <string>
+
-+ if (bytesWritten != packetBytes.length())
-+ throwf("Short write to socket");
-+ }
-+}
++#include "xmlrpc-c/girerr.hpp"
++using girerr::error;
++using girerr::throwf;
++#include "xmlrpc-c/base.hpp"
++#include "xmlrpc-c/xml.hpp"
+
++#include "tools.hpp"
++#include "xml.hpp"
+
++using namespace xmlrpc_c;
++using namespace std;
+
-+void
-+client::hangup() {
+
-+ // Closing the socket (close()) would be a better simulation of the
-+ // real world, and easier, but we shut down just the client->server
-+ // half of the socket and remain open to receive an RPC response.
-+ // That's because this test program is lazy and does the client and
-+ // server in the same thread, depending on socket buffering on the
-+ // receive side to provide parallelism. We need to be able to do the
-+ // following sequence:
-+ //
-+ // - Client sends call
-+ // - Client hangs up
-+ // - Server gets call
-+ // - Server sends response
-+ // - Client gets response
-+ // - Server notices hangup
++namespace {
+
-+ shutdown(this->clientFd, 1); // Shutdown for transmission only
-+}
++class callTestSuite : public testSuite {
+
++public:
++ virtual string suiteName() {
++ return "callTestSuite";
++ }
++ virtual void runtests(unsigned int const) {
+
++ string callXml;
+
-+void
-+client::recvResp(string * const packetBytesP) const {
++ string const methodName0("myMethod");
++ paramList const paramList0;
+
-+ char buffer[4096];
-+ int rc;
++ xml::generateCall(methodName0, paramList(), &callXml);
+
-+ waitForNetworkTransport();
++ string methodName;
++ paramList paramList;
+
-+ rc = recv(this->clientFd, buffer, sizeof(buffer), 0);
++ xml::parseCall(callXml, &methodName, ¶mList);
+
-+ if (rc < 0)
-+ throwf("recv() from socket failed, errno=%d (%s)",
-+ errno, strerror(errno));
-+ else {
-+ unsigned int bytesReceived(rc);
++ TEST(methodName == methodName0);
++ TEST(paramList.size() == paramList0.size());
++ }
++};
+
-+ *packetBytesP = string(buffer, bytesReceived);
++
++
++class responseTestSuite : public testSuite {
++
++public:
++ virtual string suiteName() {
++ return "responseTestSuite";
+ }
-+}
++ virtual void runtests(unsigned int const) {
+
++ string respXml;
+
++ rpcOutcome outcome0(value_int(7));
+
-+static void
-+testEmptyStream(registry const& myRegistry) {
-+/*----------------------------------------------------------------------------
-+ Here we send the pstream server an empty stream; i.e. we close the
-+ socket from the client end without sending anything.
++ xml::generateResponse(outcome0, &respXml);
+
-+ This should cause the server to recognize EOF.
-+-----------------------------------------------------------------------------*/
++ rpcOutcome outcome;
+
-+ client client;
++ xml::parseResponse(respXml, &outcome);
++
++ TEST((int)value_int(outcome.getResult()) ==
++ (int)value_int(outcome0.getResult()));
+
-+ serverPstreamConn server(serverPstreamConn::constrOpt()
-+ .registryP(&myRegistry)
-+ .socketFd(client.serverFd));
++ value result;
+
-+ client.hangup();
++ xml::parseSuccessfulResponse(respXml, &result);
+
-+ bool eof;
-+ server.runOnce(&eof);
++ TEST((int)value_int(result) == (int)value_int(outcome0.getResult()));
++ }
++};
+
-+ TEST(eof);
-+}
+
+
++} // unnamed namespace
+
-+static void
-+testBrokenPacket(registry const& myRegistry) {
-+/*----------------------------------------------------------------------------
-+ Here we send a stream that is not a legal packetsocket stream: it
-+ doesn't have any control word.
-+-----------------------------------------------------------------------------*/
-+ client client;
+
-+ serverPstreamConn server(serverPstreamConn::constrOpt()
-+ .registryP(&myRegistry)
-+ .socketFd(client.serverFd));
+
-+ client.sendCall("junk");
-+ client.hangup();
++string
++xmlTestSuite::suiteName() {
++ return "XMLTestSuite";
++}
+
-+ bool eof;
+
-+ EXPECT_ERROR(
-+ server.runOnce(&eof);
-+ );
++
++void
++xmlTestSuite::runtests(unsigned int const indentation) {
++
++ callTestSuite().run(indentation+1);
++
++ responseTestSuite().run(indentation+1);
+}
+diff --git a/libs/xmlrpc-c/src/cpp/test/xml.hpp b/libs/xmlrpc-c/src/cpp/test/xml.hpp
+new file mode 100644
+index 0000000..3946f46
+--- /dev/null
++++ b/libs/xmlrpc-c/src/cpp/test/xml.hpp
+@@ -0,0 +1,9 @@
++#include "tools.hpp"
+
++class xmlTestSuite : public testSuite {
+
++public:
++ virtual std::string suiteName();
++ virtual void runtests(unsigned int const indentation);
++};
+
-+static void
-+testEmptyPacket(registry const& myRegistry) {
+diff --git a/libs/xmlrpc-c/src/cpp/value.cpp b/libs/xmlrpc-c/src/cpp/value.cpp
+index 6dcba93..3af785c 100644
+--- a/libs/xmlrpc-c/src/cpp/value.cpp
++++ b/libs/xmlrpc-c/src/cpp/value.cpp
+@@ -64,6 +64,22 @@ public:
+ this->valueP = xmlrpc_datetime_new_sec(&env.env_c, cppvalue);
+ throwIfError(env);
+ }
++#if XMLRPC_HAVE_TIMEVAL
++ cDatetimeValueWrapper(struct timeval const cppvalue) {
++ env_wrap env;
++
++ this->valueP = xmlrpc_datetime_new_timeval(&env.env_c, cppvalue);
++ throwIfError(env);
++ }
++#endif
++#if XMLRPC_HAVE_TIMESPEC
++ cDatetimeValueWrapper(struct timespec const cppvalue) {
++ env_wrap env;
++
++ this->valueP = xmlrpc_datetime_new_timespec(&env.env_c, cppvalue);
++ throwIfError(env);
++ }
++#endif
+ ~cDatetimeValueWrapper() {
+ xmlrpc_DECREF(this->valueP);
+ }
+@@ -93,13 +109,13 @@ public:
+
+ namespace xmlrpc_c {
+
+-value::value() {
++value::value() { // default constructor
+ this->cValueP = NULL;
+ }
+
+
+
+-value::value(xmlrpc_value * const valueP) { // default constructor
++value::value(xmlrpc_value * const valueP) {
+
+ this->instantiate(valueP);
+ }
+@@ -135,7 +151,7 @@ value::~value() {
+ bool
+ value::isInstantiated() const {
+ /*----------------------------------------------------------------------------
+- Return whether the value is actually a value, as opposed to a placeholder
++ Return whether the object is actually a value, as opposed to a placeholder
+ variable waiting to be assigned a value.
+ -----------------------------------------------------------------------------*/
+ return (this->cValueP != NULL);
+@@ -144,6 +160,20 @@ value::isInstantiated() const {
+
+
+ void
++value::validateInstantiated() const { // private
+/*----------------------------------------------------------------------------
-+ Here we send the pstream server one empty packet. It should respond
-+ with one packet, being an XML-RPC fault response complaining that the
-+ call is not valid XML.
++ Throw an exception if the object is just a placeholder, rather than an
++ actual XML-RPC value.
+-----------------------------------------------------------------------------*/
-+ client client;
-+
-+ serverPstreamConn server(serverPstreamConn::constrOpt()
-+ .registryP(&myRegistry)
-+ .socketFd(client.serverFd));
++ if (!this->cValueP)
++ throw(error("Reference to xmlrpc_c::value that has not been "
++ "instantiated. (xmlrpc_c::value::isInstantiated may be "
++ "useful in diagnosing)"));
++}
+
-+ client.sendCall(packetStart + packetEnd);
+
-+ bool eof;
-+ server.runOnce(&eof);
+
-+ TEST(!eof);
++void
+ value::instantiate(xmlrpc_value * const valueP) {
+
+ xmlrpc_INCREF(valueP);
+@@ -168,6 +198,8 @@ value::appendToCArray(xmlrpc_value * const arrayP) const {
+ /*----------------------------------------------------------------------------
+ Append this value to the C array 'arrayP'.
+ ----------------------------------------------------------------------------*/
++ this->validateInstantiated();
+
-+ string response;
-+ client.recvResp(&response);
+ env_wrap env;
+
+ xmlrpc_array_append_item(&env.env_c, arrayP, this->cValueP);
+@@ -183,6 +215,8 @@ value::addToCStruct(xmlrpc_value * const structP,
+ /*----------------------------------------------------------------------------
+ Add this value to the C array 'arrayP' with key 'key'.
+ ----------------------------------------------------------------------------*/
++ this->validateInstantiated();
+
-+ // We ought to validate that the response is a complaint about
-+ // the empty call
+ env_wrap env;
+
+ xmlrpc_struct_set_value_n(&env.env_c, structP,
+@@ -196,8 +230,11 @@ value::addToCStruct(xmlrpc_value * const structP,
+
+ value::type_t
+ value::type() const {
+
-+ client.hangup();
++ this->validateInstantiated();
+
-+ server.runOnce(&eof);
+ /* You'd think we could just cast from xmlrpc_type to
+- value:type_t, but Gcc warns if we do that. So we have to do this
++ value::type_t, but Gcc warns if we do that. So we have to do this
+ even messier union nonsense.
+ */
+ union {
+@@ -212,6 +249,15 @@ value::type() const {
+
+
+
++ostream& operator<<(ostream& out, value::type_t const& type) {
+
-+ TEST(eof);
-+}
++ string typeName;
+
++ return out << string(xmlrpc_type_name((xmlrpc_type)type));
++}
+
+
-+static void
-+testCallInfo(client * const clientP,
-+ serverPstreamConn * const serverP) {
-+
-+ string const testCallInfoCallStream(
-+ packetStart + testCallInfoCallXml + packetEnd
-+ );
+
-+ string const testCallInfoResponseStream(
-+ packetStart + testCallInfoResponseXml + packetEnd
-+ );
+ value_int::value_int(int const cppvalue) {
+
+ class cWrapper {
+@@ -249,6 +295,8 @@ value_int::value_int(xmlrpc_c::value const baseValue) {
+
+ value_int::operator int() const {
+
++ this->validateInstantiated();
+
-+ clientP->sendCall(testCallInfoCallStream);
-+
-+ callInfo_test callInfo;
-+ int nointerrupt(0);
-+ bool eof;
-+ serverP->runOnce(&callInfo, &nointerrupt, &eof);
+ int retval;
+ env_wrap env;
+
+@@ -260,6 +308,14 @@ value_int::operator int() const {
+
+
+
++int
++value_int::cvalue() const {
+
-+ TEST(!eof);
++ return static_cast<int>(*this);
++}
+
-+ string response;
-+ clientP->recvResp(&response);
+
-+ TEST(response == testCallInfoResponseStream);
-+}
+
+ value_double::value_double(double const cppvalue) {
+
+ class cWrapper {
+@@ -295,6 +351,8 @@ value_double::value_double(xmlrpc_c::value const baseValue) {
+
+ value_double::operator double() const {
+
++ this->validateInstantiated();
+
+ double retval;
+
+ env_wrap env;
+@@ -307,6 +365,14 @@ value_double::operator double() const {
+
+
+
++double
++value_double::cvalue() const {
+
-+static void
-+testNormalCall(registry const& myRegistry) {
++ return static_cast<double>(*this);
++}
+
-+ string const sampleAddGoodCallStream(
-+ packetStart + sampleAddCallXml + packetEnd
-+ );
+
-+ string const sampleAddGoodResponseStream(
-+ packetStart + sampleAddResponseXml + packetEnd
-+ );
+
-+ client client;
+ value_boolean::value_boolean(bool const cppvalue) {
+
+ class cWrapper {
+@@ -331,8 +397,21 @@ value_boolean::value_boolean(bool const cppvalue) {
+
+
+
++value_boolean::value_boolean(xmlrpc_c::value const baseValue) {
+
-+ serverPstreamConn server(serverPstreamConn::constrOpt()
-+ .registryP(&myRegistry)
-+ .socketFd(client.serverFd));
++ if (baseValue.type() != xmlrpc_c::value::TYPE_BOOLEAN)
++ throw(error("Not boolean type. See type() method"));
++ else {
++ this->instantiate(baseValue.cValueP);
++ }
++}
+
-+ client.sendCall(sampleAddGoodCallStream);
+
-+ bool eof;
+
-+ int interrupt(1);
-+ server.runOnce(&interrupt, &eof); // returns without reading socket
-+ TEST(!eof);
+ value_boolean::operator bool() const {
+
++ this->validateInstantiated();
+
-+ server.runOnce(&eof);
+ xmlrpc_bool retval;
+
+ env_wrap env;
+@@ -345,13 +424,10 @@ value_boolean::operator bool() const {
+
+
+
+-value_boolean::value_boolean(xmlrpc_c::value const baseValue) {
++bool
++value_boolean::cvalue() const {
+
+- if (baseValue.type() != xmlrpc_c::value::TYPE_BOOLEAN)
+- throw(error("Not boolean type. See type() method"));
+- else {
+- this->instantiate(baseValue.cValueP);
+- }
++ return static_cast<bool>(*this);
+ }
+
+
+@@ -393,7 +469,7 @@ value_datetime::value_datetime(time_t const cppvalue) {
+ #if XMLRPC_HAVE_TIMEVAL
+ value_datetime::value_datetime(struct timeval const& cppvalue) {
+
+- cDatetimeValueWrapper wrapper(cppvalue.tv_sec);
++ cDatetimeValueWrapper wrapper(cppvalue);
+
+ this->instantiate(wrapper.valueP);
+ }
+@@ -404,7 +480,7 @@ value_datetime::value_datetime(struct timeval const& cppvalue) {
+ #if XMLRPC_HAVE_TIMESPEC
+ value_datetime::value_datetime(struct timespec const& cppvalue) {
+
+- cDatetimeValueWrapper wrapper(cppvalue.tv_sec);
++ cDatetimeValueWrapper wrapper(cppvalue);
+
+ this->instantiate(wrapper.valueP);
+ }
+@@ -425,6 +501,8 @@ value_datetime::value_datetime(xmlrpc_c::value const baseValue) {
+
+ value_datetime::operator time_t() const {
+
++ this->validateInstantiated();
+
-+ TEST(!eof);
+ time_t retval;
+ env_wrap env;
+
+@@ -436,6 +514,50 @@ value_datetime::operator time_t() const {
+
+
+
++#if XMLRPC_HAVE_TIMEVAL
+
-+ string response;
-+ client.recvResp(&response);
++value_datetime::operator timeval() const {
+
-+ TEST(response == sampleAddGoodResponseStream);
-+
-+ testCallInfo(&client, &server);
++ this->validateInstantiated();
+
-+ client.hangup();
++ struct timeval retval;
++ env_wrap env;
+
-+ server.runOnce(&eof);
++ xmlrpc_read_datetime_timeval(&env.env_c, this->cValueP, &retval);
++ throwIfError(env);
+
-+ TEST(eof);
++ return retval;
+}
++#endif
+
+
+
-+static void
-+testNoWaitCall(registry const& myRegistry) {
-+
-+ string const sampleAddGoodCallStream(
-+ packetStart +
-+ xmlPrologue +
-+ "<methodCall>\r\n"
-+ "<methodName>sample.add</methodName>\r\n"
-+ "<params>\r\n"
-+ "<param><value><i4>5</i4></value></param>\r\n"
-+ "<param><value><i4>7</i4></value></param>\r\n"
-+ "</params>\r\n"
-+ "</methodCall>\r\n" +
-+ packetEnd
-+ );
-+
++#if XMLRPC_HAVE_TIMESPEC
+
-+ string const sampleAddGoodResponseStream(
-+ packetStart +
-+ xmlPrologue +
-+ "<methodResponse>\r\n"
-+ "<params>\r\n"
-+ "<param><value><i4>12</i4></value></param>\r\n"
-+ "</params>\r\n"
-+ "</methodResponse>\r\n" +
-+ packetEnd
-+ );
++value_datetime::operator timespec() const {
+
-+ client client;
++ this->validateInstantiated();
+
-+ serverPstreamConn server(serverPstreamConn::constrOpt()
-+ .registryP(&myRegistry)
-+ .socketFd(client.serverFd));
++ struct timespec retval;
++ env_wrap env;
+
-+ bool eof;
-+ bool gotOne;
-+ string response;
++ xmlrpc_read_datetime_timespec(&env.env_c, this->cValueP, &retval);
++ throwIfError(env);
+
-+ server.runOnceNoWait(&eof, &gotOne);
++ return retval;
++}
++#endif
+
-+ TEST(!eof);
-+ TEST(!gotOne);
+
-+ server.runOnceNoWait(&eof);
+
-+ TEST(!eof);
++time_t
++value_datetime::cvalue() const {
+
-+ client.sendCall(sampleAddGoodCallStream);
++ return static_cast<time_t>(*this);
++}
+
-+ server.runOnceNoWait(&eof, &gotOne);
+
-+ TEST(!eof);
-+ TEST(gotOne);
+
-+ client.recvResp(&response);
+ class cNewStringWrapper {
+ public:
+ xmlrpc_value * valueP;
+@@ -517,6 +639,8 @@ value_string::crlfValue() const {
+ }
+ };
+
++ this->validateInstantiated();
+
-+ TEST(response == sampleAddGoodResponseStream);
-+
-+ client.sendCall(sampleAddGoodCallStream);
+ cWrapper wrapper(this->cValueP);
+
+ return string(wrapper.str, wrapper.length);
+@@ -526,7 +650,7 @@ value_string::crlfValue() const {
+
+ value_string::operator string() const {
+
+- env_wrap env;
++ this->validateInstantiated();
+
+ cStringWrapper adapter(this->cValueP);
+
+@@ -535,6 +659,14 @@ value_string::operator string() const {
+
+
+
++std::string
++value_string::cvalue() const {
+
-+ server.runOnce(&eof);
++ return static_cast<std::string>(*this);
++}
+
-+ TEST(!eof);
-+ client.recvResp(&response);
-+ TEST(response == sampleAddGoodResponseStream);
+
-+ client.hangup();
+
-+ server.runOnce(&eof);
+ value_bytestring::value_bytestring(
+ vector<unsigned char> const& cppvalue) {
+
+@@ -561,6 +693,17 @@ value_bytestring::value_bytestring(
+
+
+
++value_bytestring::value_bytestring(xmlrpc_c::value const baseValue) {
+
-+ TEST(eof);
++ if (baseValue.type() != xmlrpc_c::value::TYPE_BYTESTRING)
++ throw(error("Not byte string type. See type() method"));
++ else {
++ this->instantiate(baseValue.cValueP);
++ }
+}
+
+
+
-+static void
-+testMultiRpcRunNoRpc(registry const& myRegistry) {
-+
-+ client client;
-+
-+ serverPstreamConn server(serverPstreamConn::constrOpt()
-+ .registryP(&myRegistry)
-+ .socketFd(client.serverFd));
+ vector<unsigned char>
+ value_bytestring::vectorUcharValue() const {
+
+@@ -580,6 +723,8 @@ value_bytestring::vectorUcharValue() const {
+ }
+ };
+
++ this->validateInstantiated();
+
-+ client.hangup();
+ cWrapper wrapper(this->cValueP);
+
+ return vector<unsigned char>(&wrapper.contents[0],
+@@ -588,9 +733,19 @@ value_bytestring::vectorUcharValue() const {
+
+
+
++vector<unsigned char>
++value_bytestring::cvalue() const {
+
-+ server.run();
++ return this->vectorUcharValue();
+}
+
+
+
-+static void
-+testMultiRpcRunOneRpc(registry const& myRegistry) {
-+
-+ string const sampleAddGoodCallStream(
-+ packetStart +
-+ xmlPrologue +
-+ "<methodCall>\r\n"
-+ "<methodName>sample.add</methodName>\r\n"
-+ "<params>\r\n"
-+ "<param><value><i4>5</i4></value></param>\r\n"
-+ "<param><value><i4>7</i4></value></param>\r\n"
-+ "</params>\r\n"
-+ "</methodCall>\r\n" +
-+ packetEnd
-+ );
-+
-+
-+ string const sampleAddGoodResponseStream(
-+ packetStart +
-+ xmlPrologue +
-+ "<methodResponse>\r\n"
-+ "<params>\r\n"
-+ "<param><value><i4>12</i4></value></param>\r\n"
-+ "</params>\r\n"
-+ "</methodResponse>\r\n" +
-+ packetEnd
-+ );
+ size_t
+ value_bytestring::length() const {
+
++ this->validateInstantiated();
+
-+ client client;
+ env_wrap env;
+ size_t length;
+
+@@ -602,17 +757,6 @@ value_bytestring::length() const {
+
+
+
+-value_bytestring::value_bytestring(xmlrpc_c::value const baseValue) {
+-
+- if (baseValue.type() != xmlrpc_c::value::TYPE_BYTESTRING)
+- throw(error("Not byte string type. See type() method"));
+- else {
+- this->instantiate(baseValue.cValueP);
+- }
+-}
+-
+-
+-
+ value_array::value_array(vector<xmlrpc_c::value> const& cppvalue) {
+
+ class cWrapper {
+@@ -655,6 +799,8 @@ value_array::value_array(xmlrpc_c::value const baseValue) {
+ vector<xmlrpc_c::value>
+ value_array::vectorValueValue() const {
+
++ this->validateInstantiated();
+
-+ serverPstreamConn server(serverPstreamConn::constrOpt()
-+ .registryP(&myRegistry)
-+ .socketFd(client.serverFd));
+ env_wrap env;
+
+ unsigned int arraySize;
+@@ -693,9 +839,19 @@ value_array::vectorValueValue() const {
+
+
+
++vector<xmlrpc_c::value>
++value_array::cvalue() const {
+
++ return this->vectorValueValue();
++}
+
-+ client.sendCall(sampleAddGoodCallStream);
-+ client.hangup();
+
-+ int interrupt;
+
-+ interrupt = 1;
-+ server.run(&interrupt); // Returns without reading socket
+ size_t
+ value_array::size() const {
+
++ this->validateInstantiated();
+
-+ interrupt = 0;
-+ server.run(&interrupt); // Does the buffered RPC
+ env_wrap env;
+ unsigned int arraySize;
+
+@@ -752,6 +908,8 @@ value_struct::value_struct(xmlrpc_c::value const baseValue) {
+
+ value_struct::operator map<string, xmlrpc_c::value>() const {
+
++ this->validateInstantiated();
+
-+ string response;
-+ client.recvResp(&response);
+ env_wrap env;
+ unsigned int structSize;
+
+@@ -796,6 +954,14 @@ value_struct::operator map<string, xmlrpc_c::value>() const {
+
+
+
++map<string, xmlrpc_c::value>
++value_struct::cvalue() const {
+
-+ TEST(response == sampleAddGoodResponseStream);
++ return static_cast<map<string, xmlrpc_c::value> >(*this);
+}
+
+
+
- class serverPstreamConnTestSuite : public testSuite {
+ value_nil::value_nil() {
+
+ class cWrapper {
+@@ -831,6 +997,14 @@ value_nil::value_nil(xmlrpc_c::value const baseValue) {
- public:
-@@ -97,14 +644,12 @@ public:
- return "serverPstreamConnTestSuite";
- }
- virtual void runtests(unsigned int const) {
-- int const devNullFd(open("/dev/null", 0));
--
-- if (devNullFd < 0)
-- throwf("Failed to open /dev/null, needed for test.");
--
- registry myRegistry;
-
-- myRegistry.addMethod("sample.add", methodPtr(new sampleAddMethod));
-+ myRegistry.addMethod("sample.add",
-+ methodPtr(new sampleAddMethod));
-+ myRegistry.addMethod("test.callinfo",
-+ methodPtr(new testCallInfoMethod));
- registryPtr myRegistryP(new registry);
-@@ -125,43 +670,140 @@ public:
- .registryP(&myRegistry));
- );
-
-- EXPECT_ERROR( // No such file descriptor
-- serverPstreamConn server(serverPstreamConn::constrOpt()
-- .registryP(&myRegistry)
-- .socketFd(37));
-- );
-+ testEmptyStream(myRegistry);
-+
-+ testBrokenPacket(myRegistry);
-+
-+ testEmptyPacket(myRegistry);
-+
-+ testNormalCall(myRegistry);
-+
-+ testNoWaitCall(myRegistry);
-+
-+ testMultiRpcRunNoRpc(myRegistry);
++void *
++value_nil::cvalue() const {
+
-+ testMultiRpcRunOneRpc(myRegistry);
-+ }
-+};
++ return NULL;
++}
+
+
+
-+static void
-+testMultiConnInterrupt(registry const& myRegistry) {
+ value_i8::value_i8(xmlrpc_int64 const cppvalue) {
+
+ class cWrapper {
+@@ -868,6 +1042,8 @@ value_i8::value_i8(xmlrpc_c::value const baseValue) {
+
+ value_i8::operator xmlrpc_int64() const {
+
++ this->validateInstantiated();
+
-+ // We use a nonexistent file descriptor, but the server won't
-+ // ever access it, so it won't know.
+ xmlrpc_int64 retval;
+ env_wrap env;
+
+@@ -879,4 +1055,12 @@ value_i8::operator xmlrpc_int64() const {
+
+
+
++xmlrpc_int64
++value_i8::cvalue() const {
+
-+ serverPstream server(serverPstream::constrOpt()
-+ .registryP(&myRegistry)
-+ .socketFd(37));
++ return static_cast<xmlrpc_int64>(*this);
++}
+
-+ int interrupt(1); // interrupt immediately
+
-+ server.runSerial(&interrupt);
-+}
+
+ } // namespace
+diff --git a/libs/xmlrpc-c/src/cpp/xml.cpp b/libs/xmlrpc-c/src/cpp/xml.cpp
+index 9c57bf3..79802b9 100644
+--- a/libs/xmlrpc-c/src/cpp/xml.cpp
++++ b/libs/xmlrpc-c/src/cpp/xml.cpp
+@@ -21,14 +21,38 @@ class cValueWrapper {
+ /*----------------------------------------------------------------------------
+ Use an object of this class to set up to remove a reference to an
+ xmlrpc_value object (a C object with manual reference management)
+- at then end of a scope -- even if the scope ends with a throw.
++ at the end of a scope -- even if the scope ends with a throw.
+ -----------------------------------------------------------------------------*/
+ public:
+- xmlrpc_value * valueP;
++ xmlrpc_value * const valueP;
+ cValueWrapper(xmlrpc_value * valueP) : valueP(valueP) {}
+ ~cValueWrapper() { xmlrpc_DECREF(valueP); }
+ };
+
+
+
-+class derivedServer : public xmlrpc_c::serverPstream {
++class cStringWrapper {
+public:
-+ derivedServer(serverPstream::constrOpt const& constrOpt) :
-+ serverPstream(constrOpt),
-+ info("this is my derived server") {}
-+
-+ string const info;
++ const char * const cString;
++ cStringWrapper(const char * const cString) : cString(cString) {}
++ ~cStringWrapper() { xmlrpc_strfree(cString); }
+};
++
+
+
++class memblockWrapper {
++ xmlrpc_mem_block * const memblockP;
++public:
++ memblockWrapper(xmlrpc_mem_block * const memblockP) :
++ memblockP(memblockP) {}
+
-+class multiTestCallInfoMethod : public method2 {
-+
-+// The test isn't sophisticated enough actually to do an RPC, so this
-+// code never runs. We just want to see if it compiles.
++ ~memblockWrapper() {
++ XMLRPC_MEMBLOCK_FREE(char, memblockP);
++ }
++};
+
-+public:
-+ virtual void
-+ execute(paramList const& paramList,
-+ const callInfo * const callInfoPtr,
-+ value * const retvalP) {
+
-+ const callInfo_serverPstream * const callInfoP(
-+ dynamic_cast<const callInfo_serverPstream *>(callInfoPtr));
+
-+ TEST(callInfoP != NULL);
-
-- {
-- serverPstreamConn server(serverPstreamConn::constrOpt()
-- .registryP(&myRegistry)
-- .socketFd(devNullFd));
-+ paramList.verifyEnd(0);
+ xmlrpc_value *
+ cArrayFromParamList(paramList const& paramList) {
-- bool eof;
-- server.runOnce(&eof);
-- TEST(eof);
-- }
-- {
-- int fd;
-- createTestFile("junk", &fd);
-+ derivedServer * const derivedServerP(
-+ dynamic_cast<derivedServer *>(callInfoP->serverP));
+@@ -53,6 +77,42 @@ cArrayFromParamList(paramList const& paramList) {
+ return paramArrayP;
+ }
-- serverPstreamConn server(serverPstreamConn::constrOpt()
-- .registryP(&myRegistry)
-- .socketFd(fd));
-+ TEST(derivedServerP->info == string("this is my derived server"));
+
-+ TEST(callInfoP->clientAddr.sa_family == AF_INET);
-+ TEST(callInfoP->clientAddrSize >= sizeof(struct sockaddr_in));
-+
-+ *retvalP = value_nil();
-+ }
-+};
+
-+static void
-+testMultiConnCallInfo() {
++paramList const
++paramListFromCArray(xmlrpc_value * const cArrayP) {
+
-+ registry myRegistry;
-+
-+ myRegistry.addMethod("testCallInfo",
-+ methodPtr(new multiTestCallInfoMethod));
++ paramList retval;
++ env_wrap env;
+
-+ derivedServer server(serverPstream::constrOpt()
-+ .registryP(&myRegistry)
-+ .socketFd(37));
-+}
++ unsigned int const nParam(xmlrpc_array_size(&env.env_c, cArrayP));
+
++ if (!env.env_c.fault_occurred) {
++ for (unsigned int i = 0;
++ i < nParam && !env.env_c.fault_occurred;
++ ++i) {
+
++ xmlrpc_value * cParamP;
+
-+class multiConnServerTestSuite : public testSuite {
++ xmlrpc_array_read_item(&env.env_c, cArrayP, i, &cParamP);
+
-+public:
-+ virtual string suiteName() {
-+ return "multiConnServerTestSuite";
-+ }
-+ virtual void runtests(unsigned int const) {
-+ registry myRegistry;
-+
-+ myRegistry.addMethod("sample.add",
-+ methodPtr(new sampleAddMethod));
++ if (!env.env_c.fault_occurred) {
+
-+ registryPtr myRegistryP(new registry);
++ cValueWrapper const paramAuto(cParamP);
++ // Causes xmlrpc_DECREF(cParamP) at end of scope
+
-+ myRegistryP->addMethod("sample.add", methodPtr(new sampleAddMethod));
++ retval.add(cParamP);
++ }
++ }
++ }
++ if (env.env_c.fault_occurred)
++ throw(error(env.env_c.fault_string));
+
-+ EXPECT_ERROR( // Empty options
-+ serverPstream::constrOpt opt;
-+ serverPstream server(opt);
-+ );
-
-- bool eof;
-+ EXPECT_ERROR( // No registry
-+ serverPstream server(serverPstream::constrOpt()
-+ .socketFd(3));
-+ );
-
-- EXPECT_ERROR( // EOF in the middle of a packet
-- server.runOnce(&eof);
-- );
-- close(fd);
-- }
-+ EXPECT_ERROR( // No socket fd
-+ serverPstream server(serverPstream::constrOpt()
-+ .registryP(&myRegistry));
-+ );
-+
-+ testMultiConnInterrupt(myRegistry);
-
-- close(devNullFd);
-+ testMultiConnCallInfo();
- }
- };
-
-
-
-+} // unnamed namespace
++ return retval;
++}
+
+
+
- string
- serverPstreamTestSuite::suiteName() {
- return "serverPstreamTestSuite";
-@@ -173,5 +815,6 @@ serverPstreamTestSuite::runtests(unsigned int const indentation) {
-
- serverPstreamConnTestSuite().run(indentation + 1);
-
-+ multiConnServerTestSuite().run(indentation + 1);
- }
-
-diff --git a/libs/xmlrpc-c/src/cpp/test/test.cpp b/libs/xmlrpc-c/src/cpp/test/test.cpp
-index c92653f..e632595 100644
---- a/libs/xmlrpc-c/src/cpp/test/test.cpp
-+++ b/libs/xmlrpc-c/src/cpp/test/test.cpp
-@@ -4,6 +4,7 @@
- #include <vector>
- #include <sstream>
- #include <memory>
-+#include <cstring>
- #include <time.h>
-
- #include "xmlrpc-c/girerr.hpp"
-@@ -13,6 +14,9 @@ using girerr::error;
- #include "xmlrpc-c/oldcppwrapper.hpp"
- #include "xmlrpc-c/registry.hpp"
-
-+#include "base64.hpp"
-+#include "xml.hpp"
-+#include "value.hpp"
- #include "testclient.hpp"
- #include "registry.hpp"
- #include "server_abyss.hpp"
-@@ -189,7 +193,7 @@ void test_value (void) {
- XmlRpcValue::makeArray().getArray();
- XmlRpcValue::makeStruct().getStruct();
-
-- // Test Base64 values.
-+ // Test byte string values.
- const unsigned char *b64_data;
- size_t b64_len;
- XmlRpcValue val6 = XmlRpcValue::makeBase64((unsigned char*) "a\0\0b", 4);
-@@ -216,7 +220,7 @@ void test_value (void) {
- TEST(strct.structSize() == 2);
- TEST(strct.structHasKey("bar"));
- TEST(!strct.structHasKey("nosuch"));
-- for (size_t i = 0; i < strct.structSize(); i++) {
-+ for (int i = 0; i < (int)strct.structSize(); ++i) {
- string key;
- XmlRpcValue value;
- strct.structGetKeyAndValue(i, key, value);
-@@ -240,285 +244,66 @@ testXmlRpcCpp() {
+ } // namespace
+@@ -71,17 +131,6 @@ generateCall(string const& methodName,
--class intTestSuite : public testSuite {
--public:
-- virtual string suiteName() {
-- return "intTestSuite";
-- }
-- virtual void runtests(unsigned int const) {
-- value_int int1(7);
-- TEST(static_cast<int>(int1) == 7);
-- value_int int2(-7);
-- TEST(static_cast<int>(int2) == -7);
-- value val1(int1);
-- TEST(val1.type() == value::TYPE_INT);
-- value_int int3(val1);
-- TEST(static_cast<int>(int3) == 7);
-- try {
-- value_int int4(value_double(3.7));
-- TEST_FAILED("invalid cast double-int suceeded");
-- } catch (error) {}
-- }
--};
--
--
--
--class doubleTestSuite : public testSuite {
--public:
-- virtual string suiteName() {
-- return "doubleTestSuite";
-- }
-- virtual void runtests(unsigned int const) {
-- value_double double1(3.14);
-- TEST(static_cast<double>(double1) == 3.14);
-- value val1(double1);
-- TEST(val1.type() == value::TYPE_DOUBLE);
-- value_double double2(val1);
-- TEST(static_cast<double>(double2) == 3.14);
-- try {
-- value_double double4(value_int(4));
-- TEST_FAILED("invalid cast int-double suceeded");
-- } catch (error) {}
-- }
--};
--
--
--
--class booleanTestSuite : public testSuite {
--public:
-- virtual string suiteName() {
-- return "booleanTestSuite";
-- }
-- virtual void runtests(unsigned int const) {
-- value_boolean boolean1(true);
-- TEST(static_cast<bool>(boolean1) == true);
-- value_boolean boolean2(false);
-- TEST(static_cast<bool>(boolean2) == false);
-- value val1(boolean1);
-- TEST(val1.type() == value::TYPE_BOOLEAN);
-- value_boolean boolean3(val1);
-- TEST(static_cast<bool>(boolean3) == true);
-- try {
-- value_boolean boolean4(value_int(4));
-- TEST_FAILED("invalid cast int-boolean suceeded");
-- } catch (error) {}
-- }
--};
--
--
--
--class datetimeTestSuite : public testSuite {
--public:
-- virtual string suiteName() {
-- return "datetimeTestSuite";
-- }
-- virtual void runtests(unsigned int const) {
-- time_t const testTime(900684535);
-- value_datetime datetime1("19980717T14:08:55");
-- TEST(static_cast<time_t>(datetime1) == testTime);
-- value_datetime datetime2(testTime);
-- TEST(static_cast<time_t>(datetime2) == testTime);
-- value val1(datetime1);
-- TEST(val1.type() == value::TYPE_DATETIME);
-- value_datetime datetime3(val1);
-- TEST(static_cast<time_t>(datetime3) == testTime);
-- try {
-- value_datetime datetime4(value_int(4));
-- TEST_FAILED("invalid cast int-datetime suceeded");
-- } catch (error) {}
-- }
--};
--
--
--
--class stringTestSuite : public testSuite {
--public:
-- virtual string suiteName() {
-- return "stringTestSuite";
-- }
-- virtual void runtests(unsigned int const) {
-- value_string string1("hello world");
-- TEST(static_cast<string>(string1) == "hello world");
-- value_string string2("embedded\0null");
-- TEST(static_cast<string>(string2) == "embedded\0null");
-- value val1(string1);
-- TEST(val1.type() == value::TYPE_STRING);
-- value_string string3(val1);
-- TEST(static_cast<string>(string3) == "hello world");
-- try {
-- value_string string4(value_int(4));
-- TEST_FAILED("invalid cast int-string succeeded");
-- } catch (error) {}
-- value_string string5("hello world", value_string::nlCode_all);
-- TEST(static_cast<string>(string5) == "hello world");
-- value_string string6("hello\nthere\rworld\r\n\n",
-- value_string::nlCode_all);
-- TEST(static_cast<string>(string6) == "hello\nthere\nworld\n\n");
-- TEST(string6.crlfValue() == "hello\r\nthere\r\nworld\r\n\r\n");
-- value_string string7("hello\nthere\rworld\r\n\n",
-- value_string::nlCode_lf);
-- TEST(static_cast<string>(string7) == "hello\nthere\rworld\r\n\n");
-- }
--};
--
--
--
--class bytestringTestSuite : public testSuite {
--public:
-- virtual string suiteName() {
-- return "bytestringTestSuite";
-- }
-- virtual void runtests(unsigned int const) {
-- unsigned char bytestringArray[] = {0x10, 0x11, 0x12, 0x13, 0x14};
-- vector<unsigned char>
-- bytestringData(&bytestringArray[0], &bytestringArray[4]);
-- value_bytestring bytestring1(bytestringData);
--
-- vector<unsigned char> const dataReadBack1(
-- bytestring1.vectorUcharValue());
-- TEST(dataReadBack1 == bytestringData);
-- value val1(bytestring1);
-- TEST(val1.type() == value::TYPE_BYTESTRING);
-- value_bytestring bytestring2(val1);
-- vector<unsigned char> const dataReadBack2(
-- bytestring2.vectorUcharValue());
-- TEST(dataReadBack2 == bytestringData);
-- try {
-- value_bytestring bytestring4(value_int(4));
-- TEST_FAILED("invalid cast int-bytestring suceeded");
-- } catch (error) {}
-- }
--};
--
--
--
--class nilTestSuite : public testSuite {
--public:
-- virtual string suiteName() {
-- return "nilTestSuite";
-- }
-- virtual void runtests(unsigned int const) {
-- value_nil nil1;
-- value val1(nil1);
-- TEST(val1.type() == value::TYPE_NIL);
-- value_nil nil2(val1);
-- try {
-- value_nil nil4(value_int(4));
-- TEST_FAILED("invalid cast int-nil suceeded");
-- } catch (error) {}
-- }
--};
--
--
--
--class i8TestSuite : public testSuite {
--public:
-- virtual string suiteName() {
-- return "i8TestSuite";
-- }
-- virtual void runtests(unsigned int const) {
-- value_i8 int1(7);
-- TEST(static_cast<xmlrpc_int64>(int1) == 7);
-- value_i8 int2(-7);
-- TEST(static_cast<xmlrpc_int64>(int2) == -7);
-- value_i8 int5(1ull << 40);
-- TEST(static_cast<xmlrpc_int64>(int5) == (1ull << 40));
-- value val1(int1);
-- TEST(val1.type() == value::TYPE_I8);
-- value_i8 int3(val1);
-- TEST(static_cast<xmlrpc_int64>(int3) == 7);
-- try {
-- value_i8 int4(value_double(3.7));
-- TEST_FAILED("invalid cast double-i8 suceeded");
-- } catch (error) {}
-- }
--};
--
--
--
--class structTestSuite : public testSuite {
--public:
-- virtual string suiteName() {
-- return "structTestSuite";
-- }
-- virtual void runtests(unsigned int const) {
-- map<string, value> structData;
-- pair<string, value> member("the_integer", value_int(9));
-- structData.insert(member);
--
-- value_struct struct1(structData);
--
-- map<string, value> dataReadBack(struct1);
--
-- TEST(static_cast<int>(value_int(dataReadBack["the_integer"])) == 9);
--
-- value val1(struct1);
-- TEST(val1.type() == value::TYPE_STRUCT);
-- value_struct struct2(val1);
-- try {
-- value_struct struct4(value_int(4));
-- TEST_FAILED("invalid cast int-struct suceeded");
-- } catch (error) {}
-- }
--};
--
--
--
--class arrayTestSuite : public testSuite {
--public:
-- virtual string suiteName() {
-- return "arrayTestSuite";
-- }
-- virtual void runtests(unsigned int const) {
-- vector<value> arrayData;
-- arrayData.push_back(value_int(7));
-- arrayData.push_back(value_double(2.78));
-- arrayData.push_back(value_string("hello world"));
-- value_array array1(arrayData);
--
-- TEST(array1.size() == 3);
-- vector<value> dataReadBack1(array1.vectorValueValue());
-- TEST(dataReadBack1[0].type() == value::TYPE_INT);
-- TEST(static_cast<int>(value_int(dataReadBack1[0])) == 7);
-- TEST(dataReadBack1[1].type() == value::TYPE_DOUBLE);
-- TEST(static_cast<double>(value_double(dataReadBack1[1])) == 2.78);
-- TEST(dataReadBack1[2].type() == value::TYPE_STRING);
-- TEST(static_cast<string>(value_string(dataReadBack1[2])) ==
-- "hello world");
--
-- value val1(array1);
-- TEST(val1.type() == value::TYPE_ARRAY);
-- value_array array2(val1);
-- TEST(array2.size() == 3);
-- try {
-- value_array array4(value_int(4));
-- TEST_FAILED("invalid cast int-array suceeded");
-- } catch (error) {}
-- }
--};
-+static void
-+buildParamListWithAdd(paramList * const paramListP,
-+ time_t const timeFuture) {
-+
-+ paramListP->add(value_int(7));
-+ paramListP->add(value_boolean(true)).add(value_double(3.14));
-+ time_t const timeZero(0);
-+ paramListP->add(value_datetime(timeZero));
-+ paramListP->add(value_datetime(timeFuture));
-+ paramListP->add(value_string("hello world"));
-+ unsigned char bytestringArray[] = {0x10, 0x11, 0x12, 0x13, 0x14};
-+ vector<unsigned char>
-+ bytestringData(&bytestringArray[0], &bytestringArray[4]);
-+ paramListP->add(value_bytestring(bytestringData));
-+ vector<value> arrayData;
-+ arrayData.push_back(value_int(7));
-+ arrayData.push_back(value_double(2.78));
-+ arrayData.push_back(value_string("hello world"));
-+ paramListP->add(value_array(arrayData));
-+ map<string, value> structData;
-+ pair<string, value> member("the_integer", value_int(9));
-+ structData.insert(member);
-+ paramListP->add(value_struct(structData));
-+ paramListP->add(value_nil());
-+ paramListP->add(value_i8((xmlrpc_int64)UINT_MAX + 1));
-+}
+ Use dialect 'dialect' of XML-RPC.
+ -----------------------------------------------------------------------------*/
+- class memblockWrapper {
+- xmlrpc_mem_block * const memblockP;
+- public:
+- memblockWrapper(xmlrpc_mem_block * const memblockP) :
+- memblockP(memblockP) {}
+-
+- ~memblockWrapper() {
+- XMLRPC_MEMBLOCK_FREE(char, memblockP);
+- }
+- };
+-
+ xmlrpc_mem_block * callXmlMP;
+ env_wrap env;
+@@ -118,6 +167,86 @@ generateCall(string const& methodName,
--class valueTestSuite : public testSuite {
-+static void
-+verifyParamList(paramList const& paramList,
-+ time_t const timeFuture) {
+ void
++parseCall(string const& callXml,
++ string * const methodNameP,
++ paramList * const paramListP) {
+
-+ TEST(paramList.size() == 11);
++ env_wrap env;
++ const char * c_methodName;
++ xmlrpc_value * c_paramArrayP;
+
-+ TEST(paramList.getInt(0) == 7);
-+ TEST(paramList.getInt(0, 7) == 7);
-+ TEST(paramList.getInt(0, -5, 7) == 7);
-+ TEST(paramList.getBoolean(1) == true);
-+ TEST(paramList.getDouble(2) == 3.14);
-+ TEST(paramList.getDouble(2, 1) == 3.14);
-+ TEST(paramList.getDouble(2, 1, 4) == 3.14);
-+ time_t const timeZero(0);
-+ TEST(paramList.getDatetime_sec(3) == timeZero);
-+ TEST(paramList.getDatetime_sec(3, paramList::TC_ANY) == timeZero);
-+ TEST(paramList.getDatetime_sec(3, paramList::TC_NO_FUTURE)
-+ == timeZero);
-+ TEST(paramList.getDatetime_sec(4, paramList::TC_NO_PAST)
-+ == timeFuture);
-+ TEST(paramList.getString(5) == "hello world");
-+ TEST(paramList.getBytestring(6)[0] == 0x10);
-+ TEST(paramList.getArray(7).size() == 3);
-+ TEST(paramList.getArray(7, 3).size() == 3);
-+ TEST(paramList.getArray(7, 1, 3).size() == 3);
-+ paramList.getStruct(8)["the_integer"];
-+ paramList.getNil(9);
-+ TEST(paramList.getI8(10) == (xmlrpc_int64)UINT_MAX + 1);
-+ paramList.verifyEnd(11);
++ xmlrpc_parse_call(&env.env_c, callXml.c_str(), callXml.size(),
++ &c_methodName, &c_paramArrayP);
++
++ if (env.env_c.fault_occurred)
++ throw(error(env.env_c.fault_string));
++ else {
++ cValueWrapper const paramListAuto(c_paramArrayP);
++ // Causes XMLRPC_decref(c_paramArrayP) at end of scope
++ cStringWrapper const methodNameAuto(c_methodName);
++ // Causes xmlrpc_strfree(c_methodName) at end of scope
++
++ *paramListP = paramListFromCArray(c_paramArrayP);
++ *methodNameP = string(c_methodName);
++ }
+}
++
++
++
++void
++generateResponse(rpcOutcome const& outcome,
++ xmlrpc_dialect const dialect,
++ string * const respXmlP) {
++/*----------------------------------------------------------------------------
++ Generate the XML for an XML-RPC resp, given the RPC outcome.
++
++ Use dialect 'dialect' of XML-RPC.
++-----------------------------------------------------------------------------*/
++ xmlrpc_mem_block * respXmlMP;
++ env_wrap env;
++
++ respXmlMP = XMLRPC_MEMBLOCK_NEW(char, &env.env_c, 0);
++ if (!env.env_c.fault_occurred) {
++ memblockWrapper respXmlAuto(respXmlMP);
++ // Makes respXmlMP get freed at end of scope
++
++ if (outcome.succeeded()) {
++ cValueWrapper cResult(outcome.getResult().cValue());
++
++ xmlrpc_serialize_response2(&env.env_c, respXmlMP,
++ cResult.valueP, dialect);
++
++ *respXmlP = string(XMLRPC_MEMBLOCK_CONTENTS(char, respXmlMP),
++ XMLRPC_MEMBLOCK_SIZE(char, respXmlMP));
++ } else {
++ env_wrap cFault;
++
++ xmlrpc_env_set_fault(&cFault.env_c, outcome.getFault().getCode(),
++ outcome.getFault().getDescription().c_str());
++
++ xmlrpc_serialize_fault(&env.env_c, respXmlMP, &cFault.env_c);
++
++ *respXmlP = string(XMLRPC_MEMBLOCK_CONTENTS(char, respXmlMP),
++ XMLRPC_MEMBLOCK_SIZE(char, respXmlMP));
++ }
++ }
++ if (env.env_c.fault_occurred)
++ throw(error(env.env_c.fault_string));
++}
++
++
++
++void
++generateResponse(rpcOutcome const& outcome,
++ string * const respXmlP) {
++
++ generateResponse(outcome, xmlrpc_dialect_i8, respXmlP);
++
++}
++
++
++
++void
+ parseResponse(string const& responseXml,
+ rpcOutcome * const outcomeP) {
+ /*----------------------------------------------------------------------------
+diff --git a/libs/xmlrpc-c/src/double.c b/libs/xmlrpc-c/src/double.c
+index 1968d40..f96728b 100644
+--- a/libs/xmlrpc-c/src/double.c
++++ b/libs/xmlrpc-c/src/double.c
+@@ -3,6 +3,7 @@
+ #include <float.h>
--public:
-- virtual string suiteName() {
-- return "valueTestSuite";
-- }
-- virtual void runtests(unsigned int const indentation) {
--
-- intTestSuite().run(indentation+1);
-- doubleTestSuite().run(indentation+1);
-- booleanTestSuite().run(indentation+1);
-- datetimeTestSuite().run(indentation+1);
-- stringTestSuite().run(indentation+1);
-- bytestringTestSuite().run(indentation+1);
-- nilTestSuite().run(indentation+1);
-- i8TestSuite().run(indentation+1);
-- structTestSuite().run(indentation+1);
-- arrayTestSuite().run(indentation+1);
-- }
--};
+ #include "xmlrpc-c/util.h"
++#include "xmlrpc-c/util_int.h"
+ #include "double.h"
- class paramListTestSuite : public testSuite {
-@@ -529,60 +314,24 @@ public:
- }
- virtual void runtests(unsigned int const) {
+@@ -34,8 +35,8 @@ bufferConcat(buffer * const bufferP,
-+ time_t const timeFuture(time(NULL)+100);
-+
- paramList paramList1;
- TEST(paramList1.size() == 0);
+ if (bufferP->bytes) {
+ if (bufferP->next >= bufferP->end) {
+- unsigned int const oldSize = bufferP->end - bufferP->bytes;
+- unsigned int const newSize = oldSize + 64;
++ size_t const oldSize = bufferP->end - bufferP->bytes;
++ size_t const newSize = oldSize + 64;
+ bufferP->bytes = realloc(bufferP->bytes, newSize);
+ bufferP->next = bufferP->bytes + oldSize;
+ bufferP->end = bufferP->bytes + newSize;
+@@ -58,6 +59,23 @@ digitChar(unsigned int const digitValue) {
-- paramList1.add(value_int(7));
-- paramList1.add(value_boolean(true));
-- paramList1.add(value_double(3.14));
-- time_t const timeZero(0);
-- paramList1.add(value_datetime(timeZero));
-- time_t const timeFuture(time(NULL)+100);
-- paramList1.add(value_datetime(timeFuture));
-- paramList1.add(value_string("hello world"));
-- unsigned char bytestringArray[] = {0x10, 0x11, 0x12, 0x13, 0x14};
-- vector<unsigned char>
-- bytestringData(&bytestringArray[0], &bytestringArray[4]);
-- paramList1.add(value_bytestring(bytestringData));
-- vector<value> arrayData;
-- arrayData.push_back(value_int(7));
-- arrayData.push_back(value_double(2.78));
-- arrayData.push_back(value_string("hello world"));
-- paramList1.add(value_array(arrayData));
-- map<string, value> structData;
-- pair<string, value> member("the_integer", value_int(9));
-- structData.insert(member);
-- paramList1.add(value_struct(structData));
-- paramList1.add(value_nil());
-- paramList1.add(value_i8((xmlrpc_int64)UINT_MAX + 1));
--
-- TEST(paramList1.size() == 11);
--
-- TEST(paramList1.getInt(0) == 7);
-- TEST(paramList1.getInt(0, 7) == 7);
-- TEST(paramList1.getInt(0, -5, 7) == 7);
-- TEST(paramList1.getBoolean(1) == true);
-- TEST(paramList1.getDouble(2) == 3.14);
-- TEST(paramList1.getDouble(2, 1) == 3.14);
-- TEST(paramList1.getDouble(2, 1, 4) == 3.14);
-- TEST(paramList1.getDatetime_sec(3) == 0);
-- TEST(paramList1.getDatetime_sec(3, paramList::TC_ANY) == timeZero);
-- TEST(paramList1.getDatetime_sec(3, paramList::TC_NO_FUTURE)
-- == timeZero);
-- TEST(paramList1.getDatetime_sec(4, paramList::TC_NO_PAST)
-- == timeFuture);
-- TEST(paramList1.getString(5) == "hello world");
-- TEST(paramList1.getBytestring(6)[0] == 0x10);
-- TEST(paramList1.getArray(7).size() == 3);
-- TEST(paramList1.getArray(7, 3).size() == 3);
-- TEST(paramList1.getArray(7, 1, 3).size() == 3);
-- paramList1.getStruct(8)["the_integer"];
-- paramList1.getNil(9);
-- TEST(paramList1.getI8(10) == (xmlrpc_int64)UINT_MAX + 1);
-- paramList1.verifyEnd(11);
-+ buildParamListWithAdd(¶mList1, timeFuture);
+
+
++static unsigned int
++leadDigit(double const arg,
++ double const precision) {
++/*----------------------------------------------------------------------------
++ Assuming 'arg' has one digit before the decimal point (which may be zero),
++ return that digit.
+
-+ verifyParamList(paramList1, timeFuture);
++ We assume the precision of 'arg' is plus or minus 'precision', and bias our
++ estimation of the first digit up. We do that bias in order to bias toward
++ shorter decimal ciphers: It's cleaner to consider 2.9999999 to be 3 than to
++ consider 3 to be 2.999999.
++-----------------------------------------------------------------------------*/
++ return MIN(9, (unsigned int)(arg + precision));
++}
++
++
++
+ static void
+ floatWhole(double const value,
+ buffer * const formattedP,
+@@ -88,7 +106,8 @@ floatWhole(double const value,
+ */
+ leastValue = 0;
+ } else
+- leastValue = (unsigned int)(value - nonLeastAmount * 10);
++ leastValue = leadDigit(value - nonLeastAmount * 10,
++ nonLeastPrecision * 10);
- paramList paramList2(5);
- TEST(paramList2.size() == 0);
+ bufferConcat(formattedP, digitChar(leastValue));
+
+@@ -120,7 +139,7 @@ floatFractionPart(double const value,
+ unsigned int digitValue;
+
+ d *= 10;
+- digitValue = (unsigned int) d;
++ digitValue = leadDigit(d, precision);
+
+ d -= digitValue;
+
+@@ -154,7 +173,7 @@ floatFraction(double const value,
+ precision = DBL_EPSILON;
+
+ while (d > precision) {
+- unsigned int const digitValue = (unsigned int) d;
++ unsigned int const digitValue = leadDigit(d, precision);
+
+ bufferConcat(formattedP, digitChar(digitValue));
+
+diff --git a/libs/xmlrpc-c/src/json.c b/libs/xmlrpc-c/src/json.c
+new file mode 100644
+index 0000000..e422687
+--- /dev/null
++++ b/libs/xmlrpc-c/src/json.c
+@@ -0,0 +1,1466 @@
++/*=============================================================================
++ json.c
++===============================================================================
++
++ Bo Lorentsen (bl@lue.dk) had the idea to do XML-RPC values in JSON
++ and wrote the original version of this code in February and March
++ 2010.
++
++ Bryan Henderson restructured the code and improved diagnostic information
++ (made it tell you where the JSON is screwed up) before its first release
++ in XML-RPC for C and C++ in Release 1.22.
++
++ JSON: RFC-4627
++=============================================================================*/
++
++#include "xmlrpc_config.h"
++
++#include <assert.h>
++#include <ctype.h>
++#include <string.h>
++#include <unistd.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <stdarg.h>
++
++#include "xmlrpc-c/json.h"
++#include "xmlrpc-c/util.h"
++#include "xmlrpc-c/base_int.h"
++#include "xmlrpc-c/string_int.h"
++#include "xmlrpc-c/string_number.h"
++
++
++
++/*=============================================================================
++ Tokenizer for the json parser
++=============================================================================*/
++enum ttype {
++ typeNone,
++ typeOpenBrace,
++ typeCloseBrace,
++ typeOpenBracket,
++ typeCloseBracket,
++ typeColon,
++ typeComma,
++ typeString,
++ typeInteger,
++ typeFloat,
++ typeNull,
++ typeUndefined,
++ typeTrue,
++ typeFalse,
++ typeEof,
++} ;
++
++static const char *
++tokTypeName(enum ttype const type) {
++
++ switch (type) {
++ case typeNone: return "None";
++ case typeOpenBrace: return "Open brace";
++ case typeCloseBrace: return "Close brace";
++ case typeOpenBracket: return "Open bracket";
++ case typeCloseBracket: return "Close bracket";
++ case typeColon: return "Colon";
++ case typeComma: return "Comma";
++ case typeString: return "String";
++ case typeInteger: return "Integer";
++ case typeFloat: return "Float";
++ case typeNull: return "Null";
++ case typeUndefined: return "Undefined";
++ case typeTrue: return "True";
++ case typeFalse: return "False";
++ case typeEof: return "Eof";
++ default: return "???";
++ }
++}
++
++
++
++typedef struct {
++ const char * original;
++ size_t size;
++ const char * begin;
++ const char * end;
++ enum ttype type;
++} Tokenizer;
++
++
++
++static void
++initializeTokenizer(Tokenizer * const tokP,
++ const char * const str) {
++
++ tokP->original = str;
++ tokP->end = str; /* end of the "previous" token */
++ tokP->type = typeNone;
++}
++
++
++
++static void
++terminateTokenizer(Tokenizer * const tokP ATTR_UNUSED ) {
++
++}
++
++
++
++struct docPosition {
++ /* A position in the document, as meaningful to the user */
++ unsigned int lineNum; /* First line is 1 */
++ unsigned int colNum; /* First column is 1 */
++};
++
++
++
++static struct docPosition
++currentDocumentPosition(Tokenizer * const tokP) {
++/*----------------------------------------------------------------------------
++ Return the document position (line & column) of the start of the current
++ token
++-----------------------------------------------------------------------------*/
++ struct docPosition retval;
++
++ unsigned int curLine;
++ unsigned int curCol;
++ const char * cursor;
++
++ curLine = 0;
++ curCol = 0;
++
++ for (cursor = tokP->original; cursor < tokP->begin; ++cursor) {
++ ++curCol;
++
++ if (*cursor == '\n') {
++ ++curLine;
++ curCol = 0;
++ }
++ }
++ retval.lineNum = curLine + 1;
++ retval.colNum = curCol + 1;
++
++ return retval;
++}
++
++
++
++static void
++setParseErr(xmlrpc_env * const envP,
++ Tokenizer * const tokP,
++ const char * const format,
++ ...) {
++
++ struct docPosition const pos = currentDocumentPosition(tokP);
++
++ va_list args;
++ const char * msg;
++
++ XMLRPC_ASSERT(envP != NULL);
++ XMLRPC_ASSERT(format != NULL);
++
++ va_start(args, format);
++
++ xmlrpc_vasprintf(&msg, format, args);
++
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR,
++ "JSON parse error at Line %u, Column %u: %s",
++ pos.lineNum, pos.colNum, msg);
++
++ xmlrpc_strfree(msg);
++
++ va_end(args);
++}
++
++
++
++static void
++finishStringToken(xmlrpc_env * const envP,
++ Tokenizer * const tokP) {
++
++ ++tokP->end;
++
++ while (*tokP->end != '"' && *tokP->end != '\0' && !envP->fault_occurred) {
++ if (*tokP->end == '\\') {
++ ++tokP->end;
++ switch (*tokP->end) {
++ case '"':
++ case '\\':
++ case '/':
++ case 'b':
++ case 'f':
++ case 'n':
++ case 'r':
++ case 't':
++ ++tokP->end;
++ break;
++ case 'u': {
++ const char * cur;
++
++ ++tokP->end;
++
++ cur = tokP->end;
++
++ while (isxdigit(*cur) && cur - tokP->end < 4)
++ ++cur;
++
++ if (cur - tokP->end < 4)
++ setParseErr(envP, tokP,
++ "hex unicode must contain 4 digits. "
++ "There are only %u here", cur - tokP->end);
++ else
++ tokP->end = cur;
++ } break;
++
++ default:
++ setParseErr(envP, tokP, "unknown escape character "
++ "after backslash: '%c'", *tokP->end);
++ }
++ } else
++ ++tokP->end;
++ }
++ if (!envP->fault_occurred) {
++ if (*tokP->end == '\0')
++ setParseErr(envP, tokP, "JSON document ends in the middle "
++ "of a backslash escape sequence");
++ else {
++ ++tokP->end;
++ tokP->size = (tokP->end - tokP->begin) - 1;
++ }
++ }
++}
++
++
++
++static bool
++isInteger(const char * const token,
++ unsigned int const tokSize) {
++
++ if (tokSize < 1)
++ return false;
++ else {
++ unsigned int i;
++
++ i = 0;
++
++ if (token[0] == '-')
++ ++i;
++
++ while (i < tokSize) {
++ if (!isdigit(token[i]))
++ return false;
++ ++i;
++ }
++ return true;
++ }
++}
++
++
++
++static bool
++isFloat(const char * const token,
++ unsigned int const tokSize) {
++
++ unsigned int i;
++ bool seenPeriod;
++ bool seenDigit;
++
++ seenPeriod = false;
++ seenDigit = false;
++ i = 0;
++
++ if (tokSize >= 1 && token[0] == '-')
++ ++i;
++
++ while (i < tokSize) {
++ char const c = token[i];
++
++ if (c == 'e')
++ return isInteger(&token[i], tokSize - i);
++ else if (c == '.') {
++ if (seenPeriod) {
++ /* It's a second period */
++ return false;
++ } else {
++ seenPeriod = true;
++ }
++ } else if (isdigit(c))
++ seenDigit = true;
++ else
++ return false;
++ ++i;
++ }
++ if (seenDigit)
++ return true;
++ else
++ return false;
++}
++
++
++
++static bool
++isWordChar(char const candidate) {
++/*----------------------------------------------------------------------------
++ Return true iff 'candidate' is a character that can be in a "word" token.
++ A word token is a multi-character token that is either a JSON keyword or a
++ number.
++-----------------------------------------------------------------------------*/
++ return (isalnum(candidate) || candidate == '.' || candidate == '-');
++}
++
++
++
++static void
++finishAlphanumericWordToken(Tokenizer * const tokP) {
++
++ ++tokP->end;
++
++ while (isWordChar(*tokP->end))
++ ++tokP->end;
++
++ tokP->size = tokP->end - tokP->begin;
++}
++
++
++
++static void
++finishDelimiterToken(Tokenizer * const tokP) {
++
++ ++tokP->end;
++ tokP->size = tokP->end - tokP->begin;
++}
++
++
++
++static bool
++atComment(Tokenizer * const tokP) {
++
++ return (*tokP->begin == '/' && *(tokP->begin + 1) == '/');
++}
++
++
++
++static void
++advancePastWhiteSpace(Tokenizer * const tokP) {
++
++ while (isspace(*tokP->begin))
++ ++tokP->begin;
++}
++
++
++
++static void
++advancePastComments(Tokenizer * const tokP) {
++/*----------------------------------------------------------------------------
++ Advance the pointer over any comments.
++-----------------------------------------------------------------------------*/
++ while (atComment(tokP)) {
++ /* A comment ends at a newline or end of document */
++ while (*tokP->begin != '\n' && *tokP->begin != '\0')
++ ++tokP->begin;
++ }
++}
++
++
++
++static void
++advanceToNextToken(Tokenizer * const tokP) {
++/*----------------------------------------------------------------------------
++ Advance the pointer over any white space and comments to the next
++ token, or end of document, whichever comes first.
++-----------------------------------------------------------------------------*/
++
++ while (*tokP->begin != '\0' &&
++ (isspace(*tokP->begin) || atComment(tokP))) {
++
++ advancePastWhiteSpace(tokP);
++
++ advancePastComments(tokP);
++ }
++}
++
++
++
++static void
++getToken(xmlrpc_env * const envP,
++ Tokenizer * const tokP) {
++
++ /* The token starts where the last one left off */
++ tokP->begin = tokP->end;
++
++ advanceToNextToken(tokP);
++
++ if (*tokP->begin == '\0') {
++ /* End of document */
++ tokP->end = tokP->begin;
++ tokP->type = typeEof;
++ tokP->size = tokP->end - tokP->begin;
++ } else {
++ tokP->end = tokP->begin; /* initial value */
++
++ if (*tokP->begin == '{') {
++ finishDelimiterToken(tokP);
++ tokP->type = typeOpenBrace;
++ } else if (*tokP->begin == '}') {
++ finishDelimiterToken(tokP);
++ tokP->type = typeCloseBrace;
++ } else if (*tokP->begin == '[') {
++ finishDelimiterToken(tokP);
++ tokP->type = typeOpenBracket;
++ } else if (*tokP->begin == ']') {
++ finishDelimiterToken(tokP);
++ tokP->type = typeCloseBracket;
++ } else if (*tokP->begin == ':') {
++ finishDelimiterToken(tokP);
++ tokP->type = typeColon;
++ } else if (*tokP->begin == ',') {
++ finishDelimiterToken(tokP);
++ tokP->type = typeComma;
++ } else if (*tokP->begin == '"') {
++ finishStringToken(envP, tokP);
++
++ if (!envP->fault_occurred)
++ tokP->type = typeString;
++ } else {
++ if (isWordChar(*tokP->begin)) {
++ finishAlphanumericWordToken(tokP);
++
++ if (isInteger(tokP->begin, tokP->size))
++ tokP->type = typeInteger;
++ else if (isFloat(tokP->begin, tokP->size))
++ tokP->type = typeFloat;
++ else if (xmlrpc_strneq(tokP->begin, "null", tokP->size))
++ tokP->type = typeNull;
++ else if (xmlrpc_strneq(tokP->begin, "undefined", tokP->size))
++ tokP->type = typeUndefined;
++ else if(xmlrpc_strneq(tokP->begin, "false", tokP->size))
++ tokP->type = typeFalse;
++ else if(xmlrpc_strneq(tokP->begin, "true", tokP->size))
++ tokP->type = typeTrue;
++ else
++ setParseErr(envP, tokP, "Invalid word token -- "
++ "Not a valid integer, floating point "
++ "number, 'null', 'true', or 'false'");
++ } else {
++ setParseErr(envP, tokP,
++ "Not a valid token -- starts with '%c'; "
++ "a valid token starts with "
++ "one of []{}:,\"-. or digit or letter",
++ *tokP->begin);
++ }
++ }
++ }
++}
++
++
++
++/*===========================================================================*/
++
++
++
++static int
++utf8Decode(uint32_t const c,
++ char * const out) {
++/*---------------------------------------------------------------------------
++ convert a unicode char to a utf8 char
++---------------------------------------------------------------------------*/
++ if (c <= 0x7F) { /* 0XXX XXXX one byte */
++ out[0] = (char) c;
++ return 1;
++ } else if (c <= 0x7FF) { /* 110X XXXX two bytes */
++ out[0] = (char)( 0xC0 | (c >> 6) );
++ out[1] = (char)( 0x80 | (c & 0x3F) );
++ return 2;
++ } else if (c <= 0xFFFF) { /* 1110 XXXX three bytes */
++ out[0] = (char) (0xE0 | (c >> 12));
++ out[1] = (char) (0x80 | ((c >> 6) & 0x3F));
++ out[2] = (char) (0x80 | (c & 0x3F));
++ return 3;
++ } else if (c <= 0x1FFFFF) { /* 1111 0XXX four bytes */
++ out[0] = (char) (0xF0 | (c >> 18));
++ out[1] = (char) (0x80 | ((c >> 12) & 0x3F));
++ out[2] = (char) (0x80 | ((c >> 6) & 0x3F));
++ out[3] = (char) (0x80 | (c & 0x3F));
++ return 4;
++ } else
++ return 0;
++}
++
++
++
++static void
++getBackslashSequence(xmlrpc_env * const envP,
++ const char * const cur,
++ xmlrpc_mem_block * const memBlockP,
++ unsigned int * const nBytesConsumedP) {
++
++ char buffer[5];
++ unsigned int tsize;
++
++ switch (*cur) {
++ case '"':
++ buffer[0] = '"';
++ tsize = 1;
++ *nBytesConsumedP = 1;
++ break;
++ case '/':
++ buffer[0] = '/';
++ tsize = 1;
++ *nBytesConsumedP = 1;
++ break;
++ case '\\':
++ buffer[0] = '\\';
++ tsize = 1;
++ *nBytesConsumedP = 1;
++ break;
++ case 'b':
++ buffer[0] = '\b';
++ tsize = 1;
++ *nBytesConsumedP = 1;
++ break;
++ case 'f':
++ buffer[0] = '\f';
++ tsize = 1;
++ *nBytesConsumedP = 1;
++ break;
++ case 'n':
++ buffer[0] = '\n';
++ tsize = 1;
++ *nBytesConsumedP = 1;
++ break;
++ case 'r':
++ buffer[0] = '\r';
++ tsize = 1;
++ *nBytesConsumedP = 1;
++ break;
++ case 't':
++ buffer[0] = '\t';
++ tsize = 1;
++ *nBytesConsumedP = 1;
++ break;
++ case 'u': {
++ long digit;
++ strncpy(buffer, cur + 1, 4);
++ digit = strtol(buffer, NULL, 16);
++ tsize = utf8Decode(digit, buffer);
++ *nBytesConsumedP = 5; /* uXXXX */
++ break;
++ }
++ default:
++ xmlrpc_faultf(envP, "Invalid character after backslash "
++ "escape: '%c'", *cur);
++ *nBytesConsumedP = 0; /* quiet compiler warning */
++ tsize = 0; /* quiet compiler warning */
++ }
++ if (!envP->fault_occurred)
++ XMLRPC_MEMBLOCK_APPEND(char, envP, memBlockP, buffer, tsize );
++}
++
++
++
++static void
++unescapeString(xmlrpc_env * const envP,
++ const char * const begin,
++ const char * const end,
++ xmlrpc_mem_block * const memBlockP) {
++
++ XMLRPC_MEMBLOCK_INIT(char, envP, memBlockP, 0);
++
++ if (!envP->fault_occurred) {
++ const char * cur;
++ const char * last;
++
++ cur = begin;
++ last = cur;
++
++ while (cur != end && !envP->fault_occurred) {
++ if (*cur == '\\') {
++ if (cur != last) {
++ XMLRPC_MEMBLOCK_APPEND(
++ char, envP, memBlockP, last, cur - last );
++ if (!envP->fault_occurred)
++ last = cur;
++ }
++ if (!envP->fault_occurred) {
++ unsigned int nBytesConsumed;
++
++ cur += 1; /* consume slash */
++
++ getBackslashSequence(envP, cur, memBlockP,
++ &nBytesConsumed);
++
++ if (!envP->fault_occurred) {
++ cur += nBytesConsumed;
++ last = cur;
++ }
++ }
++ } else
++ ++cur;
++ }
++ if (!envP->fault_occurred) {
++ if (cur != last) {
++ XMLRPC_MEMBLOCK_APPEND(char, envP,
++ memBlockP, last, cur - last );
++ }
++ }
++ if (!envP->fault_occurred) {
++ /* Append terminating NUL */
++ XMLRPC_MEMBLOCK_APPEND(char, envP, memBlockP, "", 1);
++ }
++ if (envP->fault_occurred)
++ XMLRPC_MEMBLOCK_CLEAN(char, memBlockP);
++ }
++}
++
+
-+ paramList2.addc(7);
-+ paramList2.addc(true).addc(3.14);
-+ TEST(paramList2.size() == 3);
-+ TEST(paramList2.getInt(0) == 7);
-+ TEST(paramList2.getBoolean(1) == true);
-+ TEST(paramList2.getDouble(2) == 3.14);
- }
- };
-
-@@ -604,13 +353,13 @@ main(int argc, char**) {
-
- try {
- // Add your test suites here.
-+ base64TestSuite().run(0);
-+ xmlTestSuite().run(0);
- valueTestSuite().run(0);
- paramListTestSuite().run(0);
- registryTestSuite().run(0);
- serverAbyssTestSuite().run(0);
--#ifndef WIN32
- serverPstreamTestSuite().run(0);
--#endif
- clientTestSuite().run(0);
-
- testXmlRpcCpp();
-diff --git a/libs/xmlrpc-c/src/cpp/test/testclient.cpp b/libs/xmlrpc-c/src/cpp/test/testclient.cpp
-index 6eadf8d..f8a2b3a 100644
---- a/libs/xmlrpc-c/src/cpp/test/testclient.cpp
-+++ b/libs/xmlrpc-c/src/cpp/test/testclient.cpp
-@@ -32,10 +32,12 @@ using namespace std;
-
-
-
-+namespace {
+
- class sampleAddMethod : public method {
- public:
- sampleAddMethod() {
-- this->_signature = "ii";
-+ this->_signature = "i:ii";
- this->_help = "This method adds two integers together";
- }
- void
-@@ -78,7 +80,15 @@ public:
-
-
- class clientXmlTransport_direct : public clientXmlTransport {
-+/*----------------------------------------------------------------------------
-+ Though this fills the shoes of a client XML transport, it's really a
-+ simulation, because it doesn't transport anything anywhere. The call()
-+ method, which is supposed to transport a call to a server and then
-+ transport the response back, actually just executes the method itself.
-
-+ Part of a carriage parameter for a transport of this class is the handle
-+ of a method registry, so the transport knows how to execute the method.
++static xmlrpc_value *
++makeUtf8String(xmlrpc_env * const envP,
++ const char * const begin,
++ const char * const end) {
++/*----------------------------------------------------------------------------
++ Copy a json string directly into a string value, and convert any json
++ escaping (\uXXXX) to something acceptable to the internal string handling.
++
++ Try to do this in as few chunks as possible !
+-----------------------------------------------------------------------------*/
- public:
- void
- call(xmlrpc_c::carriageParm * const carriageParmP,
-@@ -158,6 +168,64 @@ public:
-
-
-
-+class MyRpc : public rpc {
++ xmlrpc_value * valP;
+
-+public:
-+ MyRpc(std::string const methodName,
-+ paramList const& paramList) :
-+ rpc(methodName, paramList) {}
++ xmlrpc_createXmlrpcValue(envP, &valP);
+
-+ void
-+ progress(struct xmlrpc_progress_data const& data) const {
++ if (!envP->fault_occurred) {
++ valP->_type = XMLRPC_TYPE_STRING;
++ valP->_wcs_block = NULL;
+
-+ // The way the tests are currently written, this never actually
-+ // runs; we're just testing for ability to compile.
++ if (!envP->fault_occurred)
++ unescapeString(envP, begin, end, &valP->_block);
+
-+ cout << "Progress of " << this << ": "
-+ << data.call.total << " "
-+ << data.call.now << " "
-+ << data.response.total << " "
-+ << data.response.now
-+ << endl;
++ if (envP->fault_occurred)
++ xmlrpc_DECREF(valP);
+ }
-+};
++ return valP;
++}
+
+
+
-+class clientDerivedRpcTestSuite : public testSuite {
-+/*----------------------------------------------------------------------------
-+ The object of this class tests the ability to derive a class
-+ from xmlrpc_c::rpc in order to override certain methods.
-+-----------------------------------------------------------------------------*/
-+public:
-+ virtual string suiteName() {
-+ return "clientDerivedRpcTestSuite";
++static xmlrpc_value *
++stringTokenValue(xmlrpc_env * const envP,
++ Tokenizer * const tokP) {
++
++ xmlrpc_env env;
++ xmlrpc_value * valP;
++
++ xmlrpc_env_init(&env);
++
++ assert(tokP->end >= tokP->begin + 2);
++ assert(*tokP->begin == '"');
++ assert(*(tokP->end-1) == '"');
++
++ valP = makeUtf8String(&env, tokP->begin + 1, tokP->end - 1);
++
++ if (env.fault_occurred) {
++ setParseErr(envP, tokP, "Error in string token: %s",
++ env.fault_string);
+ }
-+ virtual void runtests(unsigned int const ) {
-+ registry myRegistry;
-+
-+ myRegistry.addMethod("sample.add", methodPtr(new sampleAddMethod));
-+
-+ carriageParm_direct carriageParmDirect(&myRegistry);
-+ clientXmlTransport_direct transportDirect;
-+ client_xml clientDirect(&transportDirect);
-+ paramList paramListSampleAdd;
-+ paramListSampleAdd.add(value_int(5));
-+ paramListSampleAdd.add(value_int(7));
-+ {
-+ /* Test a successful RPC */
-+ rpcPtr rpcSampleAddP(new MyRpc("sample.add", paramListSampleAdd));
-+ rpcSampleAddP->call(&clientDirect, &carriageParmDirect);
-+ TEST(rpcSampleAddP->isFinished());
-+ TEST(rpcSampleAddP->isSuccessful());
-+ value_int const resultDirect(rpcSampleAddP->getResult());
-+ TEST(static_cast<int>(resultDirect) == 12);
++ xmlrpc_env_clean(&env);
++
++ return valP;
++}
++
++
++
++static xmlrpc_value *
++integerTokenValue(xmlrpc_env * const envP,
++ Tokenizer * const tokP) {
++
++ xmlrpc_env env;
++ char valueString[tokP->size + 1];
++ xmlrpc_int64 value;
++ xmlrpc_value * valP;
++
++ xmlrpc_env_init(&env);
++
++ memcpy(valueString, tokP->begin, tokP->size);
++ valueString[tokP->size] = '\0';
++
++ xmlrpc_parse_int64(&env, valueString, &value);
++
++ if (env.fault_occurred)
++ setParseErr(envP, tokP, "Error in integer token value '%s': %s",
++ tokP->begin, env.fault_string);
++ else
++ valP = xmlrpc_i8_new(envP, value);
++
++ xmlrpc_env_clean(&env);
++
++ return valP;
++}
++
++
++
++/* Forward declarations for recursion: */
++
++static xmlrpc_value *
++parseValue(xmlrpc_env * const envP,
++ Tokenizer * const tokP);
++
++static xmlrpc_value *
++parseList(xmlrpc_env * const envP,
++ Tokenizer * const tokP);
++
++static xmlrpc_value *
++parseObject(xmlrpc_env * const envP,
++ Tokenizer * const tokP);
++
++
++
++static void
++parseListElement(xmlrpc_env * const envP,
++ Tokenizer * const tokP,
++ xmlrpc_value * const listArrayP,
++ bool * const endOfListP) {
++
++ xmlrpc_value * itemP;
++
++ itemP = parseValue(envP, tokP);
++
++ if (!envP->fault_occurred) {
++ xmlrpc_array_append_item(envP, listArrayP, itemP);
++
++ if (!envP->fault_occurred) {
++ getToken(envP, tokP);
++ if (!envP->fault_occurred) {
++ if (tokP->type == typeComma) {
++ *endOfListP = false;
++ } else if (tokP->type == typeCloseBracket)
++ *endOfListP = true;
++ else
++ setParseErr(envP, tokP,
++ "Need comma or close bracket "
++ "after array item. Instead we have %s",
++ tokTypeName(tokP->type));
++ }
+ }
++ xmlrpc_DECREF(itemP);
+ }
-+};
++}
+
+
+
- class clientDirectTestSuite : public testSuite {
- /*----------------------------------------------------------------------------
- The object of this class tests the client facilities by using a
-@@ -241,6 +309,8 @@ public:
- // Same as above
-
- clientDirectAsyncTestSuite().run(indentation+1);
++static xmlrpc_value *
++parseList(xmlrpc_env * const envP,
++ Tokenizer * const tokP) {
+
-+ clientDerivedRpcTestSuite().run(indentation+1);
- }
- };
-
-@@ -263,6 +333,7 @@ public:
- .network_interface("eth0")
- .no_ssl_verifypeer(true)
- .no_ssl_verifyhost(true)
-+ .dont_advertise(true)
- .user_agent("my user agent")
- .ssl_cert("/etc/sslcert")
- .sslcerttype("PEM")
-@@ -278,6 +349,10 @@ public:
- .randomfile("/dev/random")
- .egdsocket("/tmp/egdsocket")
- .ssl_cipher_list("RC4-SHA:DEFAULT")
-+ .proxy("example.com")
-+ .proxy_port(8080)
-+ .proxy_userpwd("password")
-+ .proxy_type(XMLRPC_HTTPPROXY_SOCKS5)
- );
-
- clientXmlTransport_curl transport5(
-@@ -831,6 +906,10 @@ public:
-
-
-
-+} // unnamed namespace
++ xmlrpc_value * retval;
+
++ XMLRPC_ASSERT_ENV_OK(envP);
+
++ retval = xmlrpc_array_new(envP);
++
++ if (!envP->fault_occurred) {
++ bool endOfList;
++ for (endOfList = false; !endOfList && !envP->fault_occurred; ) {
++ getToken(envP,tokP);
+
- string
- clientTestSuite::suiteName() {
- return "clientTestSuite";
-diff --git a/libs/xmlrpc-c/src/cpp/value.cpp b/libs/xmlrpc-c/src/cpp/value.cpp
-index 6dcba93..3af785c 100644
---- a/libs/xmlrpc-c/src/cpp/value.cpp
-+++ b/libs/xmlrpc-c/src/cpp/value.cpp
-@@ -64,6 +64,22 @@ public:
- this->valueP = xmlrpc_datetime_new_sec(&env.env_c, cppvalue);
- throwIfError(env);
- }
-+#if XMLRPC_HAVE_TIMEVAL
-+ cDatetimeValueWrapper(struct timeval const cppvalue) {
-+ env_wrap env;
-+
-+ this->valueP = xmlrpc_datetime_new_timeval(&env.env_c, cppvalue);
-+ throwIfError(env);
-+ }
-+#endif
-+#if XMLRPC_HAVE_TIMESPEC
-+ cDatetimeValueWrapper(struct timespec const cppvalue) {
-+ env_wrap env;
-+
-+ this->valueP = xmlrpc_datetime_new_timespec(&env.env_c, cppvalue);
-+ throwIfError(env);
++ if (!envP->fault_occurred) {
++ if (tokP->type == typeEof)
++ endOfList = true;
++ else if (tokP->type == typeCloseBracket)
++ endOfList = true;
++ else
++ parseListElement(envP, tokP, retval, &endOfList);
++ }
++ }
++ if (envP->fault_occurred)
++ xmlrpc_DECREF(retval);
+ }
-+#endif
- ~cDatetimeValueWrapper() {
- xmlrpc_DECREF(this->valueP);
- }
-@@ -93,13 +109,13 @@ public:
-
- namespace xmlrpc_c {
-
--value::value() {
-+value::value() { // default constructor
- this->cValueP = NULL;
- }
-
-
-
--value::value(xmlrpc_value * const valueP) { // default constructor
-+value::value(xmlrpc_value * const valueP) {
-
- this->instantiate(valueP);
- }
-@@ -135,7 +151,7 @@ value::~value() {
- bool
- value::isInstantiated() const {
- /*----------------------------------------------------------------------------
-- Return whether the value is actually a value, as opposed to a placeholder
-+ Return whether the object is actually a value, as opposed to a placeholder
- variable waiting to be assigned a value.
- -----------------------------------------------------------------------------*/
- return (this->cValueP != NULL);
-@@ -144,6 +160,20 @@ value::isInstantiated() const {
-
-
- void
-+value::validateInstantiated() const { // private
-+/*----------------------------------------------------------------------------
-+ Throw an exception if the object is just a placeholder, rather than an
-+ actual XML-RPC value.
-+-----------------------------------------------------------------------------*/
-+ if (!this->cValueP)
-+ throw(error("Reference to xmlrpc_c::value that has not been "
-+ "instantiated. (xmlrpc_c::value::isInstantiated may be "
-+ "useful in diagnosing)"));
++ return retval;
+}
+
+
+
-+void
- value::instantiate(xmlrpc_value * const valueP) {
-
- xmlrpc_INCREF(valueP);
-@@ -168,6 +198,8 @@ value::appendToCArray(xmlrpc_value * const arrayP) const {
- /*----------------------------------------------------------------------------
- Append this value to the C array 'arrayP'.
- ----------------------------------------------------------------------------*/
-+ this->validateInstantiated();
++static void
++parseObjectMemberValue(xmlrpc_env * const envP,
++ Tokenizer * const tokP,
++ xmlrpc_value * const keyP,
++ xmlrpc_value * const objectP) {
+
- env_wrap env;
-
- xmlrpc_array_append_item(&env.env_c, arrayP, this->cValueP);
-@@ -183,6 +215,8 @@ value::addToCStruct(xmlrpc_value * const structP,
- /*----------------------------------------------------------------------------
- Add this value to the C array 'arrayP' with key 'key'.
- ----------------------------------------------------------------------------*/
-+ this->validateInstantiated();
++ xmlrpc_value * valP;
+
- env_wrap env;
-
- xmlrpc_struct_set_value_n(&env.env_c, structP,
-@@ -196,8 +230,11 @@ value::addToCStruct(xmlrpc_value * const structP,
-
- value::type_t
- value::type() const {
++ getToken(envP,tokP);
+
-+ this->validateInstantiated();
++ if (!envP->fault_occurred) {
++ valP = parseValue(envP, tokP);
+
- /* You'd think we could just cast from xmlrpc_type to
-- value:type_t, but Gcc warns if we do that. So we have to do this
-+ value::type_t, but Gcc warns if we do that. So we have to do this
- even messier union nonsense.
- */
- union {
-@@ -212,6 +249,15 @@ value::type() const {
-
-
-
-+ostream& operator<<(ostream& out, value::type_t const& type) {
++ if (!envP->fault_occurred) {
++ xmlrpc_struct_set_value_v(envP, objectP, keyP, valP);
+
-+ string typeName;
++ xmlrpc_DECREF(valP);
++ }
++ }
++}
+
-+ return out << string(xmlrpc_type_name((xmlrpc_type)type));
++
++
++static void
++parseObjectMember(xmlrpc_env * const envP,
++ Tokenizer * const tokP,
++ xmlrpc_value * const objectP) {
++
++ xmlrpc_env env;
++ xmlrpc_value * keyP;
++
++ xmlrpc_env_init(&env);
++
++ /* The current token is the string which is the member name: */
++ assert(tokP->type = typeString);
++ assert(tokP->end >= tokP->begin + 2);
++ assert(*tokP->begin == '"');
++ assert(*(tokP->end-1) == '"');
++
++ keyP = makeUtf8String(&env, tokP->begin + 1, tokP->end - 1);
++
++ if (env.fault_occurred)
++ setParseErr(envP, tokP, "Error in what is supposed to be "
++ "the key of a member of an object: %s",
++ env.fault_string);
++ else {
++ getToken(envP, tokP);
++
++ if (!envP->fault_occurred) {
++ if (tokP->type == typeColon)
++ parseObjectMemberValue(envP, tokP, keyP, objectP);
++ else
++ setParseErr(envP, tokP,
++ "Need a colon after member key "
++ "in object. Instead we have %s",
++ tokTypeName(tokP->type));
++ }
++ xmlrpc_DECREF(keyP);
++ }
++ xmlrpc_env_clean(&env);
+}
+
+
++
++static xmlrpc_value *
++parseObject(xmlrpc_env * const envP,
++ Tokenizer * const tokP) {
+
- value_int::value_int(int const cppvalue) {
-
- class cWrapper {
-@@ -249,6 +295,8 @@ value_int::value_int(xmlrpc_c::value const baseValue) {
-
- value_int::operator int() const {
-
-+ this->validateInstantiated();
++ xmlrpc_value * retval;
+
- int retval;
- env_wrap env;
-
-@@ -260,6 +308,14 @@ value_int::operator int() const {
-
-
-
-+int
-+value_int::cvalue() const {
++ XMLRPC_ASSERT_ENV_OK(envP);
+
-+ return static_cast<int>(*this);
++ retval = xmlrpc_struct_new(envP);
++
++ if (!envP->fault_occurred) {
++ bool objectDone;
++
++ objectDone = false;
++ while (!objectDone && !envP->fault_occurred) {
++ getToken(envP, tokP);
++
++ if (!envP->fault_occurred) {
++ if (tokP->type == typeCloseBrace) {
++ objectDone = true;
++ } else if (tokP->type == typeString) {
++ parseObjectMember(envP, tokP, retval);
++
++ if (!envP->fault_occurred) {
++ getToken(envP, tokP);
++
++ if (!envP->fault_occurred) {
++ if (tokP->type == typeComma) {
++ /* member separator; keep going */
++ } else if (tokP->type == typeCloseBrace) {
++ /* No more members in this object */
++ objectDone = true;
++ } else
++ setParseErr(
++ envP, tokP,
++ "Need a comma or close brace after object "
++ "member. Instead we have %s",
++ tokTypeName(tokP->type));
++ }
++ }
++ } else {
++ setParseErr(envP, tokP,
++ "Need a string (i.e. starting with "
++ "a quotation mark) as member key "
++ "in object, or closing brace to end the "
++ "object. Instead we have %s",
++ tokTypeName(tokP->type));
++ }
++ }
++ }
++ if (envP->fault_occurred)
++ xmlrpc_DECREF(retval);
++ }
++ return retval;
+}
+
+
+
- value_double::value_double(double const cppvalue) {
-
- class cWrapper {
-@@ -295,6 +351,8 @@ value_double::value_double(xmlrpc_c::value const baseValue) {
-
- value_double::operator double() const {
-
-+ this->validateInstantiated();
+
- double retval;
-
- env_wrap env;
-@@ -307,6 +365,14 @@ value_double::operator double() const {
-
-
-
-+double
-+value_double::cvalue() const {
+
-+ return static_cast<double>(*this);
++static xmlrpc_value *
++parseValue(xmlrpc_env * const envP,
++ Tokenizer * const tokP) {
++
++ xmlrpc_value * retval;
++
++ XMLRPC_ASSERT_ENV_OK(envP);
++
++ switch (tokP->type) {
++
++ case typeOpenBracket:
++ retval = parseList(envP, tokP);
++ break;
++
++ case typeOpenBrace:
++ retval = parseObject(envP, tokP);
++ break;
++
++ case typeNull:
++ retval = xmlrpc_nil_new(envP);
++ break;
++
++ case typeUndefined:
++ retval = xmlrpc_nil_new(envP);
++ break;
++
++ case typeFalse:
++ retval = xmlrpc_bool_new(envP, (xmlrpc_bool)false);
++ break;
++
++ case typeTrue:
++ retval = xmlrpc_bool_new(envP, (xmlrpc_bool)true);
++ break;
++
++ case typeInteger:
++ retval = integerTokenValue(envP, tokP);
++ break;
++
++ case typeFloat:
++ retval = xmlrpc_double_new(envP, strtod(tokP->begin, NULL));
++ break;
++
++ case typeString:
++ retval = stringTokenValue(envP, tokP);
++ break;
++
++ default:
++ retval = NULL;
++ setParseErr(envP, tokP, "Invalid token "
++ "where a value is supposed to begin: %s. "
++ "Should be an open bracket, open brace, "
++ "'null', 'false', 'true', a number, or a string",
++ tokTypeName(tokP->type));
++ }
++ return retval;
+}
+
+
+
- value_boolean::value_boolean(bool const cppvalue) {
-
- class cWrapper {
-@@ -331,8 +397,21 @@ value_boolean::value_boolean(bool const cppvalue) {
-
-
-
-+value_boolean::value_boolean(xmlrpc_c::value const baseValue) {
++xmlrpc_value *
++xmlrpc_parse_json(xmlrpc_env * const envP,
++ const char * const str) {
+
-+ if (baseValue.type() != xmlrpc_c::value::TYPE_BOOLEAN)
-+ throw(error("Not boolean type. See type() method"));
-+ else {
-+ this->instantiate(baseValue.cValueP);
++ xmlrpc_value * retval = retval;
++ Tokenizer tok;
++
++ XMLRPC_ASSERT_ENV_OK(envP);
++
++ initializeTokenizer(&tok, str);
++
++ getToken(envP, &tok);
++
++ if (!envP->fault_occurred) {
++ retval = parseValue(envP, &tok);
++
++ if (!envP->fault_occurred) {
++ getToken(envP, &tok);
++
++ if (!envP->fault_occurred) {
++ if (tok.type != typeEof)
++ setParseErr(envP, &tok, "There is junk after the end of "
++ "the JSON value, to wit a %s token",
++ tokTypeName(tok.type));
++ }
++ if (envP->fault_occurred)
++ xmlrpc_DECREF(retval);
++ }
+ }
++
++ terminateTokenizer(&tok);
++
++ return retval;
+}
+
+
+
- value_boolean::operator bool() const {
-
-+ this->validateInstantiated();
++/*============================================================================
++ Serialize value to JSON
++============================================================================*/
+
- xmlrpc_bool retval;
-
- env_wrap env;
-@@ -345,13 +424,10 @@ value_boolean::operator bool() const {
-
-
-
--value_boolean::value_boolean(xmlrpc_c::value const baseValue) {
-+bool
-+value_boolean::cvalue() const {
-
-- if (baseValue.type() != xmlrpc_c::value::TYPE_BOOLEAN)
-- throw(error("Not boolean type. See type() method"));
-- else {
-- this->instantiate(baseValue.cValueP);
-- }
-+ return static_cast<bool>(*this);
- }
-
-
-@@ -393,7 +469,7 @@ value_datetime::value_datetime(time_t const cppvalue) {
- #if XMLRPC_HAVE_TIMEVAL
- value_datetime::value_datetime(struct timeval const& cppvalue) {
-
-- cDatetimeValueWrapper wrapper(cppvalue.tv_sec);
-+ cDatetimeValueWrapper wrapper(cppvalue);
-
- this->instantiate(wrapper.valueP);
- }
-@@ -404,7 +480,7 @@ value_datetime::value_datetime(struct timeval const& cppvalue) {
- #if XMLRPC_HAVE_TIMESPEC
- value_datetime::value_datetime(struct timespec const& cppvalue) {
-
-- cDatetimeValueWrapper wrapper(cppvalue.tv_sec);
-+ cDatetimeValueWrapper wrapper(cppvalue);
-
- this->instantiate(wrapper.valueP);
- }
-@@ -425,6 +501,8 @@ value_datetime::value_datetime(xmlrpc_c::value const baseValue) {
-
- value_datetime::operator time_t() const {
-
-+ this->validateInstantiated();
++/* Borrowed from xmlrpc_serialize */
+
- time_t retval;
- env_wrap env;
-
-@@ -436,6 +514,50 @@ value_datetime::operator time_t() const {
-
-
-
-+#if XMLRPC_HAVE_TIMEVAL
++static void
++formatOut(xmlrpc_env * const envP,
++ xmlrpc_mem_block * const outputP,
++ const char * const formatString, ... ) {
+
-+value_datetime::operator timeval() const {
++ va_list args;
++ char buffer[1024];
++ int rc;
++
++ XMLRPC_ASSERT_ENV_OK(envP);
++
++ va_start(args, formatString);
+
-+ this->validateInstantiated();
++ rc = XMLRPC_VSNPRINTF(buffer, sizeof(buffer), formatString, args);
+
-+ struct timeval retval;
-+ env_wrap env;
++ /* Old vsnprintf() (and Windows) fails with return value -1 if the full
++ string doesn't fit in the buffer. New vsnprintf() puts whatever will
++ fit in the buffer, and returns the length of the full string
++ regardless. For us, this truncation is a failure.
++ */
+
-+ xmlrpc_read_datetime_timeval(&env.env_c, this->cValueP, &retval);
-+ throwIfError(env);
++ if (rc < 0)
++ xmlrpc_faultf(envP, "formatOut() overflowed internal buffer");
++ else {
++ unsigned int const formattedLen = rc;
+
-+ return retval;
++ if (formattedLen + 1 >= (sizeof(buffer)))
++ xmlrpc_faultf(envP, "formatOut() overflowed internal buffer");
++ else
++ XMLRPC_MEMBLOCK_APPEND(char, envP, outputP, buffer, formattedLen);
++ }
++ va_end(args);
+}
-+#endif
+
+
+
-+#if XMLRPC_HAVE_TIMESPEC
++static void
++indent(xmlrpc_env * const envP,
++ unsigned int const level,
++ xmlrpc_mem_block * const outP) {
+
-+value_datetime::operator timespec() const {
++ unsigned int i;
+
-+ this->validateInstantiated();
++ for (i = 0; i < level * 2 && !envP->fault_occurred; ++i)
++ XMLRPC_MEMBLOCK_APPEND(char, envP, outP, " ", 1);
++}
+
-+ struct timespec retval;
-+ env_wrap env;
+
-+ xmlrpc_read_datetime_timespec(&env.env_c, this->cValueP, &retval);
-+ throwIfError(env);
+
-+ return retval;
-+}
-+#endif
++/* Forward declaration for recursion */
+
++static void
++serializeValue(xmlrpc_env * const envP,
++ xmlrpc_value * const valP,
++ unsigned int const level,
++ xmlrpc_mem_block * const outP);
+
+
-+time_t
-+value_datetime::cvalue() const {
+
-+ return static_cast<time_t>(*this);
-+}
++static void
++appendEscapeSeq(xmlrpc_env * const envP,
++ xmlrpc_mem_block * const outP,
++ unsigned char const c) {
++/*----------------------------------------------------------------------------
++ Append to *outP the escaped representation of 'c'.
+
++ This is e.g. "\t" for tab, or "\u001C" for something exotic.
++-----------------------------------------------------------------------------*/
++ unsigned int size;
++ char buffer[6];
++ char slashChar;
++ /* Character that goes after the backslash, including 'u' for \uHHHH */
++
++ switch (c) {
++ case '"' : slashChar = '"'; break; /* U+0022 */
++ case '\\': slashChar = '\\'; break; /* U+005C */
++ case '\b': slashChar = 'b'; break; /* U+0008 */
++ case '\f': slashChar = 'f'; break; /* U+000C */
++ case '\n': slashChar = 'n'; break; /* U+000A */
++ case '\r': slashChar = 'r'; break; /* U+000D */
++ case '\t': slashChar = 't'; break; /* U+0009 */
++ default:
++ slashChar = 'u';
++ };
+
++ buffer[0] = '\\';
++ buffer[1] = slashChar;
++
++ if (slashChar == 'u') {
++ sprintf(&buffer[2], "%04x", c);
++ size = 6; /* \u1234 */
++ } else
++ size = 2;
+
- class cNewStringWrapper {
- public:
- xmlrpc_value * valueP;
-@@ -517,6 +639,8 @@ value_string::crlfValue() const {
- }
- };
-
-+ this->validateInstantiated();
++ XMLRPC_MEMBLOCK_APPEND(char, envP, outP, buffer, size);
++}
+
- cWrapper wrapper(this->cValueP);
-
- return string(wrapper.str, wrapper.length);
-@@ -526,7 +650,7 @@ value_string::crlfValue() const {
-
- value_string::operator string() const {
-
-- env_wrap env;
-+ this->validateInstantiated();
-
- cStringWrapper adapter(this->cValueP);
-
-@@ -535,6 +659,14 @@ value_string::operator string() const {
-
-
-
-+std::string
-+value_string::cvalue() const {
+
-+ return static_cast<std::string>(*this);
-+}
+
++static void
++makeJsonString(xmlrpc_env * const envP,
++ const char * const value,
++ size_t const length,
++ xmlrpc_mem_block * const outP) {
++/*----------------------------------------------------------------------------
++ Create a JSON representation of a string, appended to *outP.
++-----------------------------------------------------------------------------*/
++ const char * const begin = &value[0];
++ const char * const end = begin + length;
+
++ const char * cur;
++ const char * last;
+
- value_bytestring::value_bytestring(
- vector<unsigned char> const& cppvalue) {
-
-@@ -561,6 +693,17 @@ value_bytestring::value_bytestring(
-
-
-
-+value_bytestring::value_bytestring(xmlrpc_c::value const baseValue) {
++ last = cur = begin;
++
++ while (cur != end && !envP->fault_occurred) {
++ unsigned char const c = *cur;
+
-+ if (baseValue.type() != xmlrpc_c::value::TYPE_BYTESTRING)
-+ throw(error("Not byte string type. See type() method"));
-+ else {
-+ this->instantiate(baseValue.cValueP);
++ if (c < 0x1F || c == '"' || c == '\\') {
++ /* This characters needs to be escaped. Put a backslash escape
++ sequence in the output for this character, after copying all
++ the characters before it to the output.
++ */
++ XMLRPC_MEMBLOCK_APPEND(char, envP, outP, last, cur - last);
++
++ if (!envP->fault_occurred) {
++ appendEscapeSeq(envP, outP, c);
++
++ ++cur;
++ last = cur;
++ }
++ } else
++ ++cur;
+ }
++
++ /* Copy all characters since the last escaped character to the output */
++ if (cur != last)
++ XMLRPC_MEMBLOCK_APPEND(char, envP, outP, last, cur - last);
++
++ if (envP->fault_occurred)
++ XMLRPC_MEMBLOCK_CLEAN(char, outP);
+}
+
+
+
- vector<unsigned char>
- value_bytestring::vectorUcharValue() const {
-
-@@ -580,6 +723,8 @@ value_bytestring::vectorUcharValue() const {
- }
- };
-
-+ this->validateInstantiated();
++static void
++makeJsonStringFromXmlRpc(xmlrpc_env * const envP,
++ const xmlrpc_value * const valP,
++ xmlrpc_mem_block * const outP) {
++/*----------------------------------------------------------------------------
++ Convert a string XML-RPC value to JSON, appended to *outP.
++-----------------------------------------------------------------------------*/
++ const char * value;
++ size_t length;
+
- cWrapper wrapper(this->cValueP);
-
- return vector<unsigned char>(&wrapper.contents[0],
-@@ -588,9 +733,19 @@ value_bytestring::vectorUcharValue() const {
-
-
-
-+vector<unsigned char>
-+value_bytestring::cvalue() const {
++ xmlrpc_read_string_lp(envP, valP, &length, &value);
++ if (!envP->fault_occurred) {
++ makeJsonString(envP, value, length, outP);
+
-+ return this->vectorUcharValue();
++ xmlrpc_strfree(value);
++ }
+}
+
+
+
- size_t
- value_bytestring::length() const {
-
-+ this->validateInstantiated();
++static void
++serializeInt(xmlrpc_env * const envP,
++ xmlrpc_value * const valP,
++ xmlrpc_mem_block * const outP) {
+
- env_wrap env;
- size_t length;
-
-@@ -602,17 +757,6 @@ value_bytestring::length() const {
-
-
-
--value_bytestring::value_bytestring(xmlrpc_c::value const baseValue) {
--
-- if (baseValue.type() != xmlrpc_c::value::TYPE_BYTESTRING)
-- throw(error("Not byte string type. See type() method"));
-- else {
-- this->instantiate(baseValue.cValueP);
-- }
--}
--
--
--
- value_array::value_array(vector<xmlrpc_c::value> const& cppvalue) {
-
- class cWrapper {
-@@ -655,6 +799,8 @@ value_array::value_array(xmlrpc_c::value const baseValue) {
- vector<xmlrpc_c::value>
- value_array::vectorValueValue() const {
-
-+ this->validateInstantiated();
++ xmlrpc_int value;
+
- env_wrap env;
-
- unsigned int arraySize;
-@@ -693,9 +839,19 @@ value_array::vectorValueValue() const {
-
-
-
-+vector<xmlrpc_c::value>
-+value_array::cvalue() const {
++ xmlrpc_read_int(envP, valP, &value);
+
-+ return this->vectorValueValue();
++ formatOut(envP, outP, "%d", value);
+}
+
+
+
- size_t
- value_array::size() const {
-
-+ this->validateInstantiated();
-+
- env_wrap env;
- unsigned int arraySize;
-
-@@ -752,6 +908,8 @@ value_struct::value_struct(xmlrpc_c::value const baseValue) {
-
- value_struct::operator map<string, xmlrpc_c::value>() const {
-
-+ this->validateInstantiated();
++static void
++serializeI8(xmlrpc_env * const envP,
++ xmlrpc_value * const valP,
++ xmlrpc_mem_block * const outP) {
+
- env_wrap env;
- unsigned int structSize;
-
-@@ -796,6 +954,14 @@ value_struct::operator map<string, xmlrpc_c::value>() const {
-
-
-
-+map<string, xmlrpc_c::value>
-+value_struct::cvalue() const {
++ xmlrpc_int64 value;
+
-+ return static_cast<map<string, xmlrpc_c::value> >(*this);
++ xmlrpc_read_i8(envP, valP, &value);
++
++ formatOut(envP, outP, "%" XMLRPC_PRId64, value);
+}
+
+
+
- value_nil::value_nil() {
-
- class cWrapper {
-@@ -831,6 +997,14 @@ value_nil::value_nil(xmlrpc_c::value const baseValue) {
-
-
-
-+void *
-+value_nil::cvalue() const {
++static void
++serializeBool(xmlrpc_env * const envP,
++ xmlrpc_value * const valP,
++ xmlrpc_mem_block * const outP) {
++
++ xmlrpc_bool value;
++ xmlrpc_read_bool(envP, valP, &value);
+
-+ return NULL;
++ formatOut(envP, outP, "%s", value ? "true" : "false");
+}
+
+
+
- value_i8::value_i8(xmlrpc_int64 const cppvalue) {
-
- class cWrapper {
-@@ -868,6 +1042,8 @@ value_i8::value_i8(xmlrpc_c::value const baseValue) {
-
- value_i8::operator xmlrpc_int64() const {
-
-+ this->validateInstantiated();
-+
- xmlrpc_int64 retval;
- env_wrap env;
-
-@@ -879,4 +1055,12 @@ value_i8::operator xmlrpc_int64() const {
-
-
-
-+xmlrpc_int64
-+value_i8::cvalue() const {
++static void
++serializeDouble(xmlrpc_env * const envP,
++ xmlrpc_value * const valP,
++ xmlrpc_mem_block * const outP) {
++
++ xmlrpc_double value;
++ xmlrpc_read_double(envP, valP, &value);
+
-+ return static_cast<xmlrpc_int64>(*this);
++ formatOut(envP, outP, "%e", value);
+}
+
+
+
- } // namespace
-diff --git a/libs/xmlrpc-c/src/cpp/xml.cpp b/libs/xmlrpc-c/src/cpp/xml.cpp
-index 9c57bf3..79802b9 100644
---- a/libs/xmlrpc-c/src/cpp/xml.cpp
-+++ b/libs/xmlrpc-c/src/cpp/xml.cpp
-@@ -21,14 +21,38 @@ class cValueWrapper {
- /*----------------------------------------------------------------------------
- Use an object of this class to set up to remove a reference to an
- xmlrpc_value object (a C object with manual reference management)
-- at then end of a scope -- even if the scope ends with a throw.
-+ at the end of a scope -- even if the scope ends with a throw.
- -----------------------------------------------------------------------------*/
- public:
-- xmlrpc_value * valueP;
-+ xmlrpc_value * const valueP;
- cValueWrapper(xmlrpc_value * valueP) : valueP(valueP) {}
- ~cValueWrapper() { xmlrpc_DECREF(valueP); }
- };
-
++static void
++serializeDatetime(xmlrpc_env * const envP,
++ xmlrpc_value * const valP,
++ xmlrpc_mem_block * const outP) {
++
++ /* ISO 8601 time string as JSON does not have a datetime type */
++
++ formatOut(envP, outP, "\"%u%02u%02uT%02u:%02u:%02u\"",
++ valP->_value.dt.Y,
++ valP->_value.dt.M,
++ valP->_value.dt.D,
++ valP->_value.dt.h,
++ valP->_value.dt.m,
++ valP->_value.dt.s);
++}
+
+
-+class cStringWrapper {
-+public:
-+ const char * const cString;
-+ cStringWrapper(const char * const cString) : cString(cString) {}
-+ ~cStringWrapper() { xmlrpc_strfree(cString); }
-+};
++
++static void
++serializeString(xmlrpc_env * const envP,
++ xmlrpc_value * const valP,
++ xmlrpc_mem_block * const outP) {
++
++ formatOut(envP, outP, "\"");
+
++ makeJsonStringFromXmlRpc(envP, valP, outP);
++
++ formatOut(envP, outP, "\"");
++}
+
+
-+class memblockWrapper {
-+ xmlrpc_mem_block * const memblockP;
-+public:
-+ memblockWrapper(xmlrpc_mem_block * const memblockP) :
-+ memblockP(memblockP) {}
+
-+ ~memblockWrapper() {
-+ XMLRPC_MEMBLOCK_FREE(char, memblockP);
-+ }
-+};
++static void
++serializeBitstring(xmlrpc_env * const envP,
++ xmlrpc_value * const valP,
++ xmlrpc_mem_block * const outP) {
++/*----------------------------------------------------------------------------
++ Append to *outP a JSON string whose value is the bit string *valP in
++ base64 ASCII.
++-----------------------------------------------------------------------------*/
++ const unsigned char * bytes;
++ size_t size;
+
++ xmlrpc_read_base64(envP, valP, &size, &bytes);
+
++ if (!envP->fault_occurred) {
++ xmlrpc_mem_block * const base64P =
++ xmlrpc_base64_encode(envP, bytes, size);
+
- xmlrpc_value *
- cArrayFromParamList(paramList const& paramList) {
-
-@@ -53,6 +77,42 @@ cArrayFromParamList(paramList const& paramList) {
- return paramArrayP;
- }
-
++ if (!envP->fault_occurred) {
+
++ formatOut(envP, outP, "\"");
++
++ XMLRPC_MEMBLOCK_APPEND(
++ char, envP, outP,
++ XMLRPC_MEMBLOCK_CONTENTS(char, base64P),
++ XMLRPC_MEMBLOCK_SIZE(char, base64P));
++
++ if (!envP->fault_occurred)
++ formatOut(envP, outP, "\"");
+
-+paramList const
-+paramListFromCArray(xmlrpc_value * const cArrayP) {
++ XMLRPC_MEMBLOCK_FREE(char, base64P);
++ }
++ free((unsigned char*)bytes);
++ }
++}
+
-+ paramList retval;
-+ env_wrap env;
+
-+ unsigned int const nParam(xmlrpc_array_size(&env.env_c, cArrayP));
+
-+ if (!env.env_c.fault_occurred) {
-+ for (unsigned int i = 0;
-+ i < nParam && !env.env_c.fault_occurred;
-+ ++i) {
++static void
++serializeArray(xmlrpc_env * const envP,
++ xmlrpc_value * const valP,
++ unsigned int const level,
++ xmlrpc_mem_block * const outP) {
+
-+ xmlrpc_value * cParamP;
++ unsigned int const size = xmlrpc_array_size(envP, valP);
+
-+ xmlrpc_array_read_item(&env.env_c, cArrayP, i, &cParamP);
++ if (!envP->fault_occurred) {
++ unsigned int i;
+
-+ if (!env.env_c.fault_occurred) {
++ formatOut(envP, outP, "[\n");
+
-+ cValueWrapper const paramAuto(cParamP);
-+ // Causes xmlrpc_DECREF(cParamP) at end of scope
++ for (i = 0; i < size && !envP->fault_occurred; ++i) {
++ xmlrpc_value * const itemP =
++ xmlrpc_array_get_item(envP, valP, i);
++
++ if (!envP->fault_occurred) {
++ if (!envP->fault_occurred) {
++ serializeValue(envP, itemP, level + 1, outP);
+
-+ retval.add(cParamP);
++ if (i < size - 1)
++ XMLRPC_MEMBLOCK_APPEND(char, envP, outP, ",\n", 2);
++ }
++ }
++ }
++ if (!envP->fault_occurred) {
++ XMLRPC_MEMBLOCK_APPEND(char, envP, outP, "\n", 1);
++ indent(envP, level, outP);
++ if (!envP->fault_occurred) {
++ XMLRPC_MEMBLOCK_APPEND(char, envP, outP, "]", 1);
+ }
+ }
+ }
-+ if (env.env_c.fault_occurred)
-+ throw(error(env.env_c.fault_string));
-+
-+ return retval;
-+}
++}
+
+
+
- } // namespace
-
-
-@@ -71,17 +131,6 @@ generateCall(string const& methodName,
-
- Use dialect 'dialect' of XML-RPC.
- -----------------------------------------------------------------------------*/
-- class memblockWrapper {
-- xmlrpc_mem_block * const memblockP;
-- public:
-- memblockWrapper(xmlrpc_mem_block * const memblockP) :
-- memblockP(memblockP) {}
--
-- ~memblockWrapper() {
-- XMLRPC_MEMBLOCK_FREE(char, memblockP);
-- }
-- };
--
- xmlrpc_mem_block * callXmlMP;
- env_wrap env;
-
-@@ -118,6 +167,86 @@ generateCall(string const& methodName,
-
-
- void
-+parseCall(string const& callXml,
-+ string * const methodNameP,
-+ paramList * const paramListP) {
++static void
++serializeStructMember(xmlrpc_env * const envP,
++ xmlrpc_value * const memberKeyP,
++ xmlrpc_value * const memberValueP,
++ unsigned int const level,
++ xmlrpc_mem_block * const outP) {
+
-+ env_wrap env;
-+ const char * c_methodName;
-+ xmlrpc_value * c_paramArrayP;
++ serializeValue(envP, memberKeyP, level, outP);
++
++ if (!envP->fault_occurred) {
++ formatOut(envP, outP, ":");
++
++ if (!envP->fault_occurred)
++ serializeValue(envP, memberValueP, level, outP);
++ }
++}
+
-+ xmlrpc_parse_call(&env.env_c, callXml.c_str(), callXml.size(),
-+ &c_methodName, &c_paramArrayP);
+
-+ if (env.env_c.fault_occurred)
-+ throw(error(env.env_c.fault_string));
-+ else {
-+ cValueWrapper const paramListAuto(c_paramArrayP);
-+ // Causes XMLRPC_decref(c_paramArrayP) at end of scope
-+ cStringWrapper const methodNameAuto(c_methodName);
-+ // Causes xmlrpc_strfree(c_methodName) at end of scope
++
++static void
++serializeStruct(xmlrpc_env * const envP,
++ xmlrpc_value * const valP,
++ unsigned int const level,
++ xmlrpc_mem_block * const outP) {
+
-+ *paramListP = paramListFromCArray(c_paramArrayP);
-+ *methodNameP = string(c_methodName);
++ if (!envP->fault_occurred) {
++ formatOut(envP, outP, "{\n");
++ if (!envP->fault_occurred) {
++ unsigned int const size = xmlrpc_struct_size(envP, valP);
++
++ if (!envP->fault_occurred) {
++ unsigned int i;
++ for (i = 0; i < size && !envP->fault_occurred; ++i) {
++ xmlrpc_value * memberKeyP;
++ xmlrpc_value * memberValueP;
++
++ xmlrpc_struct_get_key_and_value(envP, valP, i,
++ &memberKeyP,
++ &memberValueP);
++ if (!envP->fault_occurred) {
++ serializeStructMember(envP, memberKeyP, memberValueP,
++ level + 1, outP);
++
++ if (!envP->fault_occurred && i < size - 1)
++ XMLRPC_MEMBLOCK_APPEND(char, envP, outP, ",\n", 2);
++ }
++ }
++ if (!envP->fault_occurred) {
++ XMLRPC_MEMBLOCK_APPEND(char, envP, outP, "\n", 1);
++ indent(envP, level, outP);
++ XMLRPC_MEMBLOCK_APPEND(char, envP, outP, "}", 1);
++ }
++ }
++ }
+ }
+}
+
+
+
-+void
-+generateResponse(rpcOutcome const& outcome,
-+ xmlrpc_dialect const dialect,
-+ string * const respXmlP) {
-+/*----------------------------------------------------------------------------
-+ Generate the XML for an XML-RPC resp, given the RPC outcome.
-+
-+ Use dialect 'dialect' of XML-RPC.
-+-----------------------------------------------------------------------------*/
-+ xmlrpc_mem_block * respXmlMP;
-+ env_wrap env;
-+
-+ respXmlMP = XMLRPC_MEMBLOCK_NEW(char, &env.env_c, 0);
-+ if (!env.env_c.fault_occurred) {
-+ memblockWrapper respXmlAuto(respXmlMP);
-+ // Makes respXmlMP get freed at end of scope
++static void
++serializeValue(xmlrpc_env * const envP,
++ xmlrpc_value * const valP,
++ unsigned int const level,
++ xmlrpc_mem_block * const outP) {
+
-+ if (outcome.succeeded()) {
-+ cValueWrapper cResult(outcome.getResult().cValue());
++ XMLRPC_ASSERT_ENV_OK(envP);
+
-+ xmlrpc_serialize_response2(&env.env_c, respXmlMP,
-+ cResult.valueP, dialect);
++ indent(envP, level, outP);
+
-+ *respXmlP = string(XMLRPC_MEMBLOCK_CONTENTS(char, respXmlMP),
-+ XMLRPC_MEMBLOCK_SIZE(char, respXmlMP));
-+ } else {
-+ env_wrap cFault;
++ switch (xmlrpc_value_type(valP)) {
++ case XMLRPC_TYPE_INT:
++ serializeInt(envP, valP, outP);
++ break;
+
-+ xmlrpc_env_set_fault(&cFault.env_c, outcome.getFault().getCode(),
-+ outcome.getFault().getDescription().c_str());
++ case XMLRPC_TYPE_I8:
++ serializeI8(envP, valP, outP);
++ break;
+
-+ xmlrpc_serialize_fault(&env.env_c, respXmlMP, &cFault.env_c);
-+
-+ *respXmlP = string(XMLRPC_MEMBLOCK_CONTENTS(char, respXmlMP),
-+ XMLRPC_MEMBLOCK_SIZE(char, respXmlMP));
-+ }
-+ }
-+ if (env.env_c.fault_occurred)
-+ throw(error(env.env_c.fault_string));
-+}
++ case XMLRPC_TYPE_BOOL:
++ serializeBool(envP, valP, outP);
++ break;
+
++ case XMLRPC_TYPE_DOUBLE:
++ serializeDouble(envP, valP, outP);
++ break;
+
++ case XMLRPC_TYPE_DATETIME:
++ serializeDatetime(envP, valP, outP);
++ break;
+
-+void
-+generateResponse(rpcOutcome const& outcome,
-+ string * const respXmlP) {
++ case XMLRPC_TYPE_STRING:
++ serializeString(envP, valP, outP);
++ break;
+
-+ generateResponse(outcome, xmlrpc_dialect_i8, respXmlP);
++ case XMLRPC_TYPE_BASE64:
++ serializeBitstring(envP, valP, outP);
++ break;
+
-+}
++ case XMLRPC_TYPE_ARRAY:
++ serializeArray(envP, valP, level, outP);
++ break;
+
++ case XMLRPC_TYPE_STRUCT:
++ serializeStruct(envP, valP, level, outP);
++ break;
+
++ case XMLRPC_TYPE_C_PTR:
++ xmlrpc_faultf(envP, "Tried to serialize a C pointer value.");
++ break;
+
-+void
- parseResponse(string const& responseXml,
- rpcOutcome * const outcomeP) {
- /*----------------------------------------------------------------------------
-diff --git a/libs/xmlrpc-c/src/double.c b/libs/xmlrpc-c/src/double.c
-index 1968d40..f96728b 100644
---- a/libs/xmlrpc-c/src/double.c
-+++ b/libs/xmlrpc-c/src/double.c
-@@ -3,6 +3,7 @@
- #include <float.h>
-
- #include "xmlrpc-c/util.h"
-+#include "xmlrpc-c/util_int.h"
-
- #include "double.h"
-
-@@ -34,8 +35,8 @@ bufferConcat(buffer * const bufferP,
-
- if (bufferP->bytes) {
- if (bufferP->next >= bufferP->end) {
-- unsigned int const oldSize = bufferP->end - bufferP->bytes;
-- unsigned int const newSize = oldSize + 64;
-+ size_t const oldSize = bufferP->end - bufferP->bytes;
-+ size_t const newSize = oldSize + 64;
- bufferP->bytes = realloc(bufferP->bytes, newSize);
- bufferP->next = bufferP->bytes + oldSize;
- bufferP->end = bufferP->bytes + newSize;
-@@ -58,6 +59,23 @@ digitChar(unsigned int const digitValue) {
-
-
-
-+static unsigned int
-+leadDigit(double const arg,
-+ double const precision) {
-+/*----------------------------------------------------------------------------
-+ Assuming 'arg' has one digit before the decimal point (which may be zero),
-+ return that digit.
++ case XMLRPC_TYPE_NIL:
++ formatOut(envP, outP, "null");
++ break;
+
-+ We assume the precision of 'arg' is plus or minus 'precision', and bias our
-+ estimation of the first digit up. We do that bias in order to bias toward
-+ shorter decimal ciphers: It's cleaner to consider 2.9999999 to be 3 than to
-+ consider 3 to be 2.999999.
-+-----------------------------------------------------------------------------*/
-+ return MIN(9, (unsigned int)(arg + precision));
++ case XMLRPC_TYPE_DEAD:
++ xmlrpc_faultf(envP, "Tried to serialize a dead value.");
++ break;
++
++ default:
++ xmlrpc_faultf(envP, "Invalid xmlrpc_value type: 0x%x",
++ xmlrpc_value_type(valP));
++ }
+}
+
+
+
- static void
- floatWhole(double const value,
- buffer * const formattedP,
-@@ -88,7 +106,8 @@ floatWhole(double const value,
- */
- leastValue = 0;
- } else
-- leastValue = (unsigned int)(value - nonLeastAmount * 10);
-+ leastValue = leadDigit(value - nonLeastAmount * 10,
-+ nonLeastPrecision * 10);
-
- bufferConcat(formattedP, digitChar(leastValue));
-
-@@ -120,7 +139,7 @@ floatFractionPart(double const value,
- unsigned int digitValue;
-
- d *= 10;
-- digitValue = (unsigned int) d;
-+ digitValue = leadDigit(d, precision);
-
- d -= digitValue;
-
-@@ -154,7 +173,7 @@ floatFraction(double const value,
- precision = DBL_EPSILON;
-
- while (d > precision) {
-- unsigned int const digitValue = (unsigned int) d;
-+ unsigned int const digitValue = leadDigit(d, precision);
-
- bufferConcat(formattedP, digitChar(digitValue));
-
++void
++xmlrpc_serialize_json(xmlrpc_env * const envP,
++ xmlrpc_value * const valP,
++ xmlrpc_mem_block * const outP) {
++
++ serializeValue(envP, valP, 0, outP);
++}
diff --git a/libs/xmlrpc-c/src/method.c b/libs/xmlrpc-c/src/method.c
index cf58b26..467bbbe 100644
--- a/libs/xmlrpc-c/src/method.c
xmlrpc_methodInfo ** const methodPP);
void
+diff --git a/libs/xmlrpc-c/src/parse_datetime.c b/libs/xmlrpc-c/src/parse_datetime.c
+new file mode 100644
+index 0000000..a6299d7
+--- /dev/null
++++ b/libs/xmlrpc-c/src/parse_datetime.c
+@@ -0,0 +1,466 @@
++#include "xmlrpc_config.h"
++
++#include <stdlib.h>
++#include <assert.h>
++#include <ctype.h>
++#include <string.h>
++
++#if HAVE_REGEX
++#include <sys/types.h> /* Missing from regex.h in GNU libc */
++#include <regex.h>
++#endif
++
++#include "bool.h"
++
++#include "xmlrpc-c/base.h"
++#include "xmlrpc-c/base_int.h"
++#include "xmlrpc-c/util.h"
++
++#include "parse_datetime.h"
++
++
++
++#if HAVE_REGEX
++
++static unsigned int
++digitStringValue(const char * const string,
++ regmatch_t const match) {
++/*----------------------------------------------------------------------------
++ Return the numerical value of the decimal whole number substring of
++ 'string' identified by 'match'. E.g. if 'string' is 'abc34d' and
++ 'match' says start at 3 and end at 5, we return 34.
++-----------------------------------------------------------------------------*/
++ unsigned int i;
++ unsigned int accum;
++
++ assert(match.rm_so >= 0);
++ assert(match.rm_eo >= 0);
++
++ for (i = match.rm_so, accum = 0; i < (unsigned)match.rm_eo; ++i) {
++ accum *= 10;
++ assert(isdigit(string[i]));
++ accum += string[i] - '0';
++ }
++ return accum;
++}
++#endif /* HAVE_REGEX */
++
++
++
++#if HAVE_REGEX
++
++static unsigned int
++digitStringMillionths(const char * const string,
++ regmatch_t const match) {
++/*----------------------------------------------------------------------------
++ Return the number of millionths represented by the digits after the
++ decimal point in a decimal string, where thse digits are the substring
++ of 'string' identified by 'match'. E.g. if the substring is
++ 34, we return 340,000.
++-----------------------------------------------------------------------------*/
++ unsigned int i;
++ unsigned int accum;
++
++ assert(match.rm_so >= 0);
++ assert(match.rm_eo >= 0);
++
++ for (i = match.rm_so, accum = 0; i < (unsigned)match.rm_so+6; ++i) {
++ accum *= 10;
++ if (i < (unsigned)match.rm_eo) {
++ assert(isdigit(string[i]));
++ accum += string[i] - '0';
++ }
++ }
++ return accum;
++}
++#endif /* HAVE_REGEX */
++
++
++#if HAVE_REGEX
++
++static void
++subParseDtRegex_standard(regmatch_t * const matches,
++ const char * const datetimeString,
++ xmlrpc_datetime * const dtP) {
++
++ dtP->Y = digitStringValue(datetimeString, matches[1]);
++ dtP->M = digitStringValue(datetimeString, matches[2]);
++ dtP->D = digitStringValue(datetimeString, matches[3]);
++ dtP->h = digitStringValue(datetimeString, matches[4]);
++ dtP->m = digitStringValue(datetimeString, matches[5]);
++ dtP->s = digitStringValue(datetimeString, matches[6]);
++
++ if (matches[7].rm_so == -1)
++ dtP->u = 0;
++ else
++ dtP->u = digitStringMillionths(datetimeString, matches[7]);
++}
++
++
++
++static void
++subParseDtRegex_standardtzd(regmatch_t * const matches,
++ const char * const datetimeString,
++ xmlrpc_datetime * const dtP) {
++
++ dtP->Y = digitStringValue(datetimeString, matches[1]);
++ dtP->M = digitStringValue(datetimeString, matches[2]);
++ dtP->D = digitStringValue(datetimeString, matches[3]);
++ dtP->h = digitStringValue(datetimeString, matches[4]);
++ dtP->m = digitStringValue(datetimeString, matches[5]);
++ dtP->s = digitStringValue(datetimeString, matches[6]);
++}
++
++#endif /* HAVE_REGEX */
++
++
++#if HAVE_REGEX
++
++typedef void (*regparsefunc_t)(regmatch_t * const matches,
++ const char * const datetimeString,
++ xmlrpc_datetime * const dtP);
++
++
++struct regexParser {
++ const char * const regex;
++ regparsefunc_t func;
++};
++
++static const struct regexParser iso8601Regex[]
++
++ /* Each entry of this table is instructions for recognizing and parsing
++ some form of a "dateTime.iso8601" XML element.
++
++ (Note that we recognize far more than just the XML-RPC standard
++ dateTime.iso8601).
++ */
++
++ = {
++ {
++ /* Examples:
++ YYYYMMDD[T]HHMMSS
++ YYYY-MM-DD[T]HH:MM:SS
++ YYYY-MM-DD[T]HH:MM:SS.ssss
++ */
++
++ "^([0-9]{4})\\-?([0-9]{2})\\-?([0-9]{2})T"
++ "([0-9]{2}):?([0-9]{2}):?([0-9]{2})\\.?([0-9]+)?$",
++ subParseDtRegex_standard
++ },
++
++ {
++ /* Examples:
++ YYYYMMDD[T]HHMMSS[Z]
++ YYYYMMDD[T]HHMMSS[+-]hh
++ YYYYMMDD[T]HHMMSS[+-]hhmm
++ */
++
++ "^([0-9]{4})\\-?([0-9]{2})\\-?([0-9]{2})T"
++ "([0-9]{2}):?([0-9]{2}):?([0-9]{2})[Z\\+\\-]([0-9]{2,4})?$",
++ subParseDtRegex_standardtzd
++ },
++ { NULL, NULL }
++ };
++#endif /* HAVE_REGEX */
++
++
++
++#if HAVE_REGEX
++static void
++parseDtRegex(xmlrpc_env * const envP,
++ const char * const datetimeString,
++ xmlrpc_datetime * const dtP) {
++
++ unsigned int i;
++ const struct regexParser * parserP;
++ /* The parser that matches 'datetimeString'. Null if no match yet
++ found.
++ */
++ regmatch_t matches[1024];
++
++ for (i = 0, parserP = NULL; iso8601Regex[i].regex && !parserP; ++i) {
++ const struct regexParser * const thisParserP = &iso8601Regex[i];
++
++ regex_t re;
++ int status;
++
++ status = regcomp(&re, thisParserP->regex, REG_ICASE | REG_EXTENDED);
++
++ /* Our regex is valid, so it must have compiled: */
++ assert(status == 0);
++ {
++ int status;
++
++ status = regexec(&re, datetimeString, ARRAY_SIZE(matches),
++ matches, 0);
++
++ if (status == 0) {
++ assert(matches[0].rm_so != -1); /* Match of whole regex */
++
++ parserP = thisParserP;
++ }
++ regfree(&re);
++ }
++ }
++
++ if (parserP) {
++ parserP->func(matches, datetimeString, dtP);
++ } else {
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR,
++ "value '%s' is not of any form we recognize "
++ "for a <dateTime.iso8601> element",
++ datetimeString);
++ }
++
++}
++#endif /* HAVE_REGEX */
++
++
++
++static __inline__ void
++parseDtNoRegex(xmlrpc_env * const envP,
++ const char * const datetimeString,
++ xmlrpc_datetime * const dtP) {
++
++ unsigned int const dtStrlen = strlen(datetimeString);
++
++ char year[4+1];
++ char month[2+1];
++ char day[2+1];
++ char hour[2+1];
++ char minute[2+1];
++ char second[2+1];
++
++ if (dtStrlen < 17 || dtStrlen == 18 || dtStrlen > 24)
++ xmlrpc_faultf(envP, "could not parse date, size incompatible: '%d'",
++ dtStrlen);
++ else {
++ year[0] = datetimeString[ 0];
++ year[1] = datetimeString[ 1];
++ year[2] = datetimeString[ 2];
++ year[3] = datetimeString[ 3];
++ year[4] = '\0';
++
++ month[0] = datetimeString[ 4];
++ month[1] = datetimeString[ 5];
++ month[2] = '\0';
++
++ day[0] = datetimeString[ 6];
++ day[1] = datetimeString[ 7];
++ day[2] = '\0';
++
++ assert(datetimeString[ 8] == 'T');
++
++ hour[0] = datetimeString[ 9];
++ hour[1] = datetimeString[10];
++ hour[2] = '\0';
++
++ assert(datetimeString[11] == ':');
++
++ minute[0] = datetimeString[12];
++ minute[1] = datetimeString[13];
++ minute[2] = '\0';
++
++ assert(datetimeString[14] == ':');
++
++ second[0] = datetimeString[15];
++ second[1] = datetimeString[16];
++ second[2] = '\0';
++
++ if (dtStrlen > 17) {
++ unsigned int const pad = 24 - dtStrlen;
++ unsigned int i;
++
++ dtP->u = atoi(&datetimeString[18]);
++ for (i = 0; i < pad; ++i)
++ dtP->u *= 10;
++ } else
++ dtP->u = 0;
++
++ dtP->Y = atoi(year);
++ dtP->M = atoi(month);
++ dtP->D = atoi(day);
++ dtP->h = atoi(hour);
++ dtP->m = atoi(minute);
++ dtP->s = atoi(second);
++ }
++}
++
++
++
++static void
++validateFirst17(xmlrpc_env * const envP,
++ const char * const dt) {
++/*----------------------------------------------------------------------------
++ Assuming 'dt' is at least 17 characters long, validate that the first
++ 17 characters are a valid XML-RPC datetime, e.g.
++ "20080628T16:35:02"
++-----------------------------------------------------------------------------*/
++ unsigned int i;
++
++ for (i = 0; i < 8 && !envP->fault_occurred; ++i)
++ if (!isdigit(dt[i]))
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR, "Not a digit: '%c'", dt[i]);
++
++ if (dt[8] != 'T')
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR, "9th character is '%c', not 'T'",
++ dt[8]);
++ if (!isdigit(dt[9]))
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR, "Not a digit: '%c'", dt[9]);
++ if (!isdigit(dt[10]))
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR, "Not a digit: '%c'", dt[10]);
++ if (dt[11] != ':')
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR, "Not a colon: '%c'", dt[11]);
++ if (!isdigit(dt[12]))
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR, "Not a digit: '%c'", dt[12]);
++ if (!isdigit(dt[13]))
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR, "Not a digit: '%c'", dt[13]);
++ if (dt[14] != ':')
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR, "Not a colon: '%c'", dt[14]);
++ if (!isdigit(dt[15]))
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR, "Not a digit: '%c'", dt[15]);
++ if (!isdigit(dt[16]))
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR, "Not a digit: '%c'", dt[16]);
++}
++
++
++
++static void
++validateFractionalSeconds(xmlrpc_env * const envP,
++ const char * const dt) {
++/*----------------------------------------------------------------------------
++ Validate the fractional seconds part of the XML-RPC datetime string
++ 'dt', if any. That's the decimal point and everything following
++ it.
++-----------------------------------------------------------------------------*/
++ if (strlen(dt) > 17) {
++ if (dt[17] != '.') {
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR,
++ "'%c' where only a period is valid", dt[17]);
++ } else {
++ if (dt[18] == '\0')
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR, "Nothing after decimal point");
++ else {
++ unsigned int i;
++ for (i = 18; dt[i] != '\0' && !envP->fault_occurred; ++i) {
++ if (!isdigit(dt[i]))
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR,
++ "Non-digit in fractional seconds: '%c'", dt[i]);
++ }
++ }
++ }
++ }
++}
++
++
++
++static __inline__ void
++validateFormatNoRegex(xmlrpc_env * const envP,
++ const char * const dt) {
++
++ if (strlen(dt) < 17)
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR,
++ "Invalid length of %u of datetime. "
++ "Must be at least 17 characters",
++ (unsigned)strlen(dt));
++ else {
++ validateFirst17(envP, dt);
++
++ validateFractionalSeconds(envP, dt);
++ }
++}
++
++
++
++static void
++validateXmlrpcDatetimeSome(xmlrpc_env * const envP,
++ xmlrpc_datetime const dt) {
++/*----------------------------------------------------------------------------
++ Type xmlrpc_datetime is defined such that it can represent a nonexistent
++ datetime such as February 30.
++
++ Validate that 'dt' doesn't have glaring invalidities such as Hour 25.
++ We leave the possibility of more subtle invalidity such as February 30.
++-----------------------------------------------------------------------------*/
++
++ if (dt.M < 1 || dt.M > 12)
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR,
++ "Month of year value %u is not in the range 1-12", dt.M);
++ else if (dt.D < 1 || dt.D > 31)
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR,
++ "Day of month value %u is not in the range 1-31", dt.D);
++ else if (dt.h > 23)
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR,
++ "Hour of day value %u is not in the range 0-23", dt.h);
++ else if (dt.m > 59)
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR,
++ "Minute of hour value %u is not in the range 0-59", dt.m);
++ else if (dt.s > 59)
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR,
++ "Second of minute value %u is not in the range 0-59", dt.s);
++ else if (dt.u > 999999)
++ xmlrpc_env_set_fault_formatted(
++ envP, XMLRPC_PARSE_ERROR,
++ "Microsecond of second value %u is not in the range 0-1M", dt.u);
++}
++
++
++
++void
++xmlrpc_parseDatetime(xmlrpc_env * const envP,
++ const char * const datetimeString,
++ xmlrpc_value ** const valuePP) {
++/*----------------------------------------------------------------------------
++ Parse the content of a <datetime.iso8601> XML-RPC XML element, e.g.
++ "20000301T00:00:00".
++
++ 'str' is that content.
++
++ Example of the format we parse: "19980717T14:08:55"
++ Note that this is not quite ISO 8601. It's a bizarre combination of
++ two ISO 8601 formats.
++
++ Note that Xmlrpc-c recognizes various extensions of the XML-RPC
++ <datetime.iso8601> element type.
++
++ 'str' may not be valid XML-RPC (with extensions). In that case we fail
++ with fault code XMLRPC_PARSE_ERROR.
++-----------------------------------------------------------------------------*/
++ xmlrpc_datetime dt;
++
++#if HAVE_REGEX
++ parseDtRegex(envP, datetimeString, &dt);
++#else
++ /* Note: validation is not as strong without regex */
++ validateFormatNoRegex(envP, datetimeString);
++ if (!envP->fault_occurred)
++ parseDtNoRegex(envP, datetimeString, &dt);
++#endif
++
++ if (!envP->fault_occurred) {
++ validateXmlrpcDatetimeSome(envP, dt);
++
++ if (!envP->fault_occurred)
++ *valuePP = xmlrpc_datetime_new(envP, dt);
++ }
++}
+diff --git a/libs/xmlrpc-c/src/parse_datetime.h b/libs/xmlrpc-c/src/parse_datetime.h
+new file mode 100644
+index 0000000..85207b7
+--- /dev/null
++++ b/libs/xmlrpc-c/src/parse_datetime.h
+@@ -0,0 +1,12 @@
++#ifndef PARSE_DATETIME_H_INCLUDED
++#define PARSE_DATETIME_H_INCLUDED
++
++#include "xmlrpc-c/util.h"
++#include "xmlrpc-c/base.h"
++
++void
++xmlrpc_parseDatetime(xmlrpc_env * const envP,
++ const char * const str,
++ xmlrpc_value ** const valuePP);
++
++#endif
diff --git a/libs/xmlrpc-c/src/parse_value.c b/libs/xmlrpc-c/src/parse_value.c
index a00b2a1..b40cf47 100644
--- a/libs/xmlrpc-c/src/parse_value.c
- } while (0)
-
-;
+diff --git a/libs/xmlrpc-c/src/test/testtool.c b/libs/xmlrpc-c/src/test/testtool.c
+new file mode 100644
+index 0000000..85d2e8c
+--- /dev/null
++++ b/libs/xmlrpc-c/src/test/testtool.c
+@@ -0,0 +1,65 @@
++#include <stdlib.h>
++#include <stdio.h>
++
++#include "xmlrpc_config.h"
++#include "xmlrpc-c/util.h"
++#include "xmlrpc-c/util_int.h"
++
++#include "testtool.h"
++ /* Defines global variable, 'total_tests', 'total_failures' */
++
++
++/* This is a good place to set a breakpoint. */
++void
++test_failure(const char * const file,
++ unsigned int const line,
++ const char * const label,
++ const char * const statement) {
++
++ ++total_failures;
++ printf("\n%s:%u: test failure: %s (%s)\n", file, line, label, statement);
++
++ /* We abort rather than exit so one can tell from a dump or debug session
++ who called us.
++ */
++ abort();
++}
++
++
++
++void
++test_fault(xmlrpc_env * const envP,
++ int const expectedCode,
++ const char * const fileName,
++ unsigned int const lineNumber) {
++
++ ++total_tests;
++
++ if (!envP->fault_occurred)
++ test_failure(fileName, lineNumber, "no fault occurred", "");
++ else if (envP->fault_code != expectedCode)
++ test_failure(fileName, lineNumber, "wrong fault occurred",
++ envP->fault_string);
++ else
++ printf(".");
++
++ xmlrpc_env_clean(envP);
++ xmlrpc_env_init(envP);
++}
++
++
++
++void
++test_null_string(const char * const string,
++ const char * const fileName,
++ unsigned int const lineNumber) {
++
++ ++total_tests;
++
++ if (string != NULL)
++ test_failure(fileName, lineNumber, "string not null", string);
++ else
++ printf(".");
++}
++
++
+diff --git a/libs/xmlrpc-c/src/test/testtool.h b/libs/xmlrpc-c/src/test/testtool.h
+new file mode 100644
+index 0000000..8aeeebc
+--- /dev/null
++++ b/libs/xmlrpc-c/src/test/testtool.h
+@@ -0,0 +1,80 @@
++#ifndef TESTTOOL_H_INCLUDED
++#define TESTTOOL_H_INCLUDED
++
++#include <stdlib.h>
++#include <stdio.h>
++#include <math.h>
++
++#include "xmlrpc-c/util.h"
++#include "xmlrpc-c/util_int.h"
++
++extern int total_tests;
++extern int total_failures;
++
++
++void
++test_failure(const char * const file,
++ unsigned int const line,
++ const char * const label,
++ const char * const statement);
++
++void
++test_fault(xmlrpc_env * const envP,
++ int const expectedCode,
++ const char * const fileName,
++ unsigned int const lineNumber);
++
++void
++test_null_string(const char * const string,
++ const char * const fileName,
++ unsigned int const lineNumber);
++
++#define TEST(statement) \
++do { \
++ ++total_tests; \
++ if ((statement)) { \
++ printf("."); \
++ } else { \
++ test_failure(__FILE__, __LINE__, "expected", #statement); \
++ } \
++ } while (0)
++
++#define TEST_NO_FAULT(env) \
++ do { \
++ ++total_tests; \
++ if (!(env)->fault_occurred) { \
++ printf("."); \
++ } else { \
++ test_failure(__FILE__, __LINE__, "fault occurred", \
++ (env)->fault_string); \
++ } \
++ } while (0)
++
++#define TEST_EPSILON 1E-5
++
++#define FORCENONZERO(x) (MAX(fabs(x), TEST_EPSILON))
++
++#define FLOATEQUAL(comparand, comparator) \
++ ((fabs((comparand)-(comparator)))/FORCENONZERO(comparand) < TEST_EPSILON)
++#define TESTFLOATEQUAL(comparand, comparator) \
++ TEST(FLOATEQUAL(comparand, comparator))
++
++#define TEST_FAULT(envP, code) \
++ do { test_fault(envP, code, __FILE__, __LINE__); } while(0)
++
++;
++
++#define TEST_NULL_STRING(string) \
++ do { test_null_string(string, __FILE__, __LINE__); } while(0)
++
++;
++
++#define TEST_ERROR(reason) \
++do { \
++ printf("Unable to test at %s/%u. %s", __FILE__, __LINE__, reason); \
++ abort(); \
++ } while (0)
++
++;
++
++#endif
diff --git a/libs/xmlrpc-c/src/test/value.c b/libs/xmlrpc-c/src/test/value.c
index bda938c..6ed6c47 100644
--- a/libs/xmlrpc-c/src/test/value.c
/* First value of wrong type */
xmlrpc_decompose_value(&env, testStructP, "{s:b,s:i,*}",
+diff --git a/libs/xmlrpc-c/src/test/value_datetime.c b/libs/xmlrpc-c/src/test/value_datetime.c
+new file mode 100644
+index 0000000..6671713
+--- /dev/null
++++ b/libs/xmlrpc-c/src/test/value_datetime.c
+@@ -0,0 +1,424 @@
++#define _XOPEN_SOURCE 600 /* Make sure strdup() is in <string.h> */
++
++#include <stdlib.h>
++#include <stdio.h>
++#include <string.h>
++#include <errno.h>
++
++#include "casprintf.h"
++#include "girstring.h"
++
++#include "xmlrpc_config.h"
++
++#include "xmlrpc-c/base.h"
++#include "xmlrpc-c/string_int.h"
++
++#include "testtool.h"
++
++#include "value_datetime.h"
++
++
++
++static const char *
++truncateFracSec(const char * const datestring) {
++/*----------------------------------------------------------------------------
++ Return 'datestring', but with any fractional seconds chopped off.
++ E.g. if 'datestring' is "20000301T00:00:00.654321",
++ we return "20000301T00:00:00".
++-----------------------------------------------------------------------------*/
++ char * buffer;
++ unsigned int i;
++
++ buffer = strdup(datestring);
++
++ for (i = 0; i < strlen(buffer); ++i) {
++ if (buffer[i] == '.')
++ buffer[i] = '\0';
++ }
++ return buffer;
++}
++
++
++
++#if XMLRPC_HAVE_TIMEVAL
++
++static struct timeval
++makeTv(time_t const secs,
++ unsigned int const usecs) {
++
++ struct timeval retval;
++
++ retval.tv_sec = secs;
++ retval.tv_usec = usecs;
++
++ return retval;
++}
++
++static bool
++tvIsEqual(struct timeval const comparand,
++ struct timeval const comparator) {
++ return
++ comparand.tv_sec == comparator.tv_sec &&
++ comparand.tv_usec == comparator.tv_usec;
++}
++#endif
++
++
++
++#if XMLRPC_HAVE_TIMESPEC
++
++static struct timespec
++makeTs(time_t const secs,
++ unsigned int const usecs) {
++
++ struct timespec retval;
++
++ retval.tv_sec = secs;
++ retval.tv_nsec = usecs * 1000;
++
++ return retval;
++}
++
++static bool
++tsIsEqual(struct timespec const comparand,
++ struct timespec const comparator) {
++ return
++ comparand.tv_sec == comparator.tv_sec &&
++ comparand.tv_nsec == comparator.tv_nsec;
++}
++#endif
++
++
++
++static void
++test_value_datetime_varytime(const char * const datestring,
++ time_t const datetime,
++ unsigned int const usec) {
++
++ xmlrpc_value * v;
++ xmlrpc_env env;
++ const char * readBackString;
++ time_t readBackDt;
++ unsigned int readBackUsec;
++ const char * datestringSec;
++#if XMLRPC_HAVE_TIMEVAL
++ struct timeval const dtTimeval = makeTv(datetime, usec);
++ struct timeval readBackTv;
++#endif
++#if XMLRPC_HAVE_TIMESPEC
++ struct timespec const dtTimespec = makeTs(datetime, usec);
++ struct timespec readBackTs;
++#endif
++
++ datestringSec = truncateFracSec(datestring);
++
++ xmlrpc_env_init(&env);
++
++ /* Test xmlrpc_datetime_new_str and time read functions*/
++ v = xmlrpc_datetime_new_str(&env, datestring);
++ TEST_NO_FAULT(&env);
++ TEST(XMLRPC_TYPE_DATETIME == xmlrpc_value_type(v));
++
++ xmlrpc_read_datetime_sec(&env, v, &readBackDt);
++ TEST_NO_FAULT(&env);
++ TEST(readBackDt == datetime);
++
++ xmlrpc_read_datetime_usec(&env, v, &readBackDt, &readBackUsec);
++ TEST_NO_FAULT(&env);
++ TEST(readBackDt == datetime);
++ TEST(readBackUsec == usec);
++
++#if XMLRPC_HAVE_TIMEVAL
++ xmlrpc_read_datetime_timeval(&env, v, &readBackTv);
++ TEST_NO_FAULT(&env);
++ TEST(tvIsEqual(dtTimeval, readBackTv));
++#endif
++
++#if XMLRPC_HAVE_TIMESPEC
++ xmlrpc_read_datetime_timespec(&env, v, &readBackTs);
++ TEST_NO_FAULT(&env);
++ TEST(tsIsEqual(dtTimespec, readBackTs));
++#endif
++
++ xmlrpc_DECREF(v);
++
++ /* Test xmlrpc_datetime_new_sec */
++ v = xmlrpc_datetime_new_sec(&env, datetime);
++ TEST_NO_FAULT(&env);
++ TEST(XMLRPC_TYPE_DATETIME == xmlrpc_value_type(v));
++
++ xmlrpc_read_datetime_str(&env, v, &readBackString);
++ TEST_NO_FAULT(&env);
++ TEST(streq(readBackString, datestringSec));
++ strfree(readBackString);
++
++ xmlrpc_DECREF(v);
++
++ /* Test xmlrpc_datetime_new_usec */
++ v = xmlrpc_datetime_new_usec(&env, datetime, usec);
++ TEST_NO_FAULT(&env);
++ TEST(XMLRPC_TYPE_DATETIME == xmlrpc_value_type(v));
++
++ xmlrpc_read_datetime_str(&env, v, &readBackString);
++ TEST_NO_FAULT(&env);
++ TEST(streq(readBackString, datestring));
++ strfree(readBackString);
++
++ xmlrpc_DECREF(v);
++
++#if XMLRPC_HAVE_TIMEVAL
++ /* Test xmlrpc_datetime_new_timeval */
++ v = xmlrpc_datetime_new_timeval(&env, dtTimeval);
++ TEST_NO_FAULT(&env);
++ TEST(XMLRPC_TYPE_DATETIME == xmlrpc_value_type(v));
++
++ xmlrpc_read_datetime_str(&env, v, &readBackString);
++ TEST_NO_FAULT(&env);
++ TEST(streq(readBackString, datestring));
++ strfree(readBackString);
++
++ xmlrpc_DECREF(v);
++#endif
++
++#if XMLRPC_HAVE_TIMESPEC
++ /* Test xmlrpc_datetime_new_timespec */
++ v = xmlrpc_datetime_new_timespec(&env, dtTimespec);
++ TEST_NO_FAULT(&env);
++ TEST(XMLRPC_TYPE_DATETIME == xmlrpc_value_type(v));
++
++ xmlrpc_read_datetime_str(&env, v, &readBackString);
++ TEST_NO_FAULT(&env);
++ TEST(streq(readBackString, datestring));
++ strfree(readBackString);
++
++ xmlrpc_DECREF(v);
++#endif
++
++ xmlrpc_env_clean(&env);
++ strfree(datestringSec);
++}
++
++
++
++static void
++test_value_datetime_not_unix(const char * const datestring) {
++
++ xmlrpc_value * v;
++ xmlrpc_env env;
++ time_t dt;
++
++ xmlrpc_env_init(&env);
++
++ v = xmlrpc_datetime_new_str(&env, datestring);
++ TEST_NO_FAULT(&env);
++
++ xmlrpc_read_datetime_sec(&env, v, &dt);
++ TEST_FAULT(&env, XMLRPC_INTERNAL_ERROR);
++
++ xmlrpc_DECREF(v);
++
++ xmlrpc_env_clean(&env);
++}
++
++
++
++static void
++test_value_datetime_str_invalid1(const char * const datestring) {
++
++ /* Ideally, xmlrpc_datetime_new_str() would fail on these, but
++ the code doesn't implement that today. However,
++ xmlrpc_read_datetime_sec() does catch many cases, so we
++ use that.
++
++ Note that xmlrpc_read_datetime_sec() doesn't catch them all.
++ Sometimes it just returns garbage, e.g. returns July 1 for
++ June 31.
++ */
++
++ xmlrpc_value * v;
++ xmlrpc_env env;
++ time_t dt;
++
++ xmlrpc_env_init(&env);
++
++ v = xmlrpc_datetime_new_str(&env, datestring);
++ TEST_NO_FAULT(&env);
++
++ xmlrpc_read_datetime_sec(&env, v, &dt);
++ TEST_FAULT(&env, XMLRPC_PARSE_ERROR);
++
++ xmlrpc_DECREF(v);
++
++ xmlrpc_env_clean(&env);
++}
++
++
++
++static void
++test_value_datetime_str_invalid2(const char * const datestring) {
++
++ xmlrpc_value * v;
++ xmlrpc_env env;
++
++ xmlrpc_env_init(&env);
++
++ v = xmlrpc_datetime_new_str(&env, datestring);
++ TEST_FAULT(&env, XMLRPC_INTERNAL_ERROR);
++
++ xmlrpc_env_clean(&env);
++}
++
++
++
++static void
++test_build_decomp_datetime(void) {
++
++ const char * datestring = "19980717T14:08:55";
++ time_t const datetime = 900684535;
++
++ xmlrpc_env env;
++ xmlrpc_value * v;
++ time_t dt;
++ const char * ds;
++
++ xmlrpc_env_init(&env);
++
++ v = xmlrpc_build_value(&env, "t", datetime);
++ TEST_NO_FAULT(&env);
++ TEST(v != NULL);
++ TEST(xmlrpc_value_type(v) == XMLRPC_TYPE_DATETIME);
++
++ dt = 0;
++ xmlrpc_read_datetime_sec(&env, v, &dt);
++ TEST(dt == datetime);
++
++ dt = 0;
++ xmlrpc_decompose_value(&env, v, "t", &dt);
++ xmlrpc_DECREF(v);
++ TEST_NO_FAULT(&env);
++ TEST(dt == datetime);
++
++ v = xmlrpc_int_new(&env, 9);
++ TEST_NO_FAULT(&env);
++ xmlrpc_decompose_value(&env, v, "t", &dt);
++ TEST_FAULT(&env, XMLRPC_TYPE_ERROR);
++ xmlrpc_env_clean(&env);
++ xmlrpc_env_init(&env);
++ xmlrpc_decompose_value(&env, v, "8", &ds);
++ TEST_FAULT(&env, XMLRPC_TYPE_ERROR);
++ xmlrpc_env_clean(&env);
++ xmlrpc_env_init(&env);
++ xmlrpc_DECREF(v);
++
++ v = xmlrpc_build_value(&env, "8", datestring);
++ TEST_NO_FAULT(&env);
++ TEST(v != NULL);
++ TEST(xmlrpc_value_type(v) == XMLRPC_TYPE_DATETIME);
++ xmlrpc_decompose_value(&env, v, "8", &ds);
++ xmlrpc_DECREF(v);
++ TEST_NO_FAULT(&env);
++ TEST(streq(ds, datestring));
++ strfree(ds);
++
++ xmlrpc_env_clean(&env);
++}
++
++
++
++
++static void
++test_value_datetime_basic(void) {
++
++ xmlrpc_value * v;
++ xmlrpc_env env;
++ xmlrpc_datetime dt;
++ xmlrpc_datetime readBackDt;
++
++ xmlrpc_env_init(&env);
++
++ dt.Y = 2001;
++ dt.M = 12;
++ dt.D = 25;
++ dt.h = 1;
++ dt.m = 2;
++ dt.s = 3;
++ dt.u = 4;
++
++ v = xmlrpc_datetime_new(&env, dt);
++
++ xmlrpc_read_datetime(&env, v, &readBackDt);
++ TEST_NO_FAULT(&env);
++ TEST(readBackDt.Y = dt.Y);
++ TEST(readBackDt.M = dt.M);
++ TEST(readBackDt.D = dt.D);
++ TEST(readBackDt.h = dt.h);
++ TEST(readBackDt.m = dt.m);
++ TEST(readBackDt.s = dt.s);
++ TEST(readBackDt.u = dt.u);
++
++ xmlrpc_env_clean(&env);
++}
++
++
++
++void
++test_value_datetime(void) {
++
++ const char * datestring = "19980717T14:08:55";
++ time_t const datetime = 900684535;
++
++ xmlrpc_env env;
++
++ printf("\n Running datetime value tests");
++
++ xmlrpc_env_init(&env);
++
++ TEST(streq(xmlrpc_type_name(XMLRPC_TYPE_DATETIME), "DATETIME"));
++
++ test_value_datetime_basic();
++
++ /* Valid datetime, generated from XML-RPC string, time_t, and
++ time_t + microseconds
++ */
++
++ test_value_datetime_varytime(datestring, datetime, 0);
++
++ /* test microseconds */
++ test_value_datetime_varytime("20000301T00:00:00.654321",
++ 951868800, 654321);
++ test_value_datetime_varytime("20040229T23:59:59.123000",
++ 1078099199, 123000);
++ test_value_datetime_varytime("20000229T23:59:59.000123",
++ 951868799, 123);
++
++ /* Leap years */
++ test_value_datetime_varytime("20000229T23:59:59", 951868799, 0);
++ test_value_datetime_varytime("20000301T00:00:00", 951868800, 0);
++ test_value_datetime_varytime("20010228T23:59:59", 983404799, 0);
++ test_value_datetime_varytime("20010301T00:00:00", 983404800, 0);
++ test_value_datetime_varytime("20040229T23:59:59", 1078099199, 0);
++ test_value_datetime_varytime("20040301T00:00:00", 1078099200, 0);
++
++ /* Datetimes that can't be represented as time_t */
++ test_value_datetime_not_unix("19691231T23:59:59");
++
++ /* Invalid datetimes */
++ /* Note that the code today does a pretty weak job of validating datetimes,
++ so we test only the validation that we know is implemented.
++ */
++ test_value_datetime_str_invalid1("19700101T25:00:00");
++ test_value_datetime_str_invalid1("19700101T10:61:01");
++ test_value_datetime_str_invalid1("19700101T10:59:61");
++ test_value_datetime_str_invalid1("19700001T10:00:00");
++ test_value_datetime_str_invalid1("19701301T10:00:00");
++ test_value_datetime_str_invalid1("19700132T10:00:00");
++ test_value_datetime_str_invalid2("19700132T10:00:00.");
++ test_value_datetime_str_invalid2("19700132T10:00:00,123");
++
++ test_build_decomp_datetime();
++
++ xmlrpc_env_clean(&env);
++
++ printf("\n");
++ printf(" datetime value tests done.\n");
++}
+diff --git a/libs/xmlrpc-c/src/test/value_datetime.h b/libs/xmlrpc-c/src/test/value_datetime.h
+new file mode 100644
+index 0000000..5a26f60
+--- /dev/null
++++ b/libs/xmlrpc-c/src/test/value_datetime.h
+@@ -0,0 +1,7 @@
++#ifndef VALUE_DATETIME_H_INCLUDED
++#define VALUE_DATETIME_H_INCLUDED
++
++void
++test_value_datetime(void);
++
++#endif
diff --git a/libs/xmlrpc-c/src/test/xml_data.h b/libs/xmlrpc-c/src/test/xml_data.h
index 4b34238..89b5e49 100644
--- a/libs/xmlrpc-c/src/test/xml_data.h
-}
-
-#endif /* HAVE_UNICODE_WCHAR */
+diff --git a/libs/xmlrpc-c/srcdir.mk.in b/libs/xmlrpc-c/srcdir.mk.in
+new file mode 100644
+index 0000000..d389df1
+--- /dev/null
++++ b/libs/xmlrpc-c/srcdir.mk.in
+@@ -0,0 +1 @@
++SRCDIR=@abs_srcdir@
diff --git a/libs/xmlrpc-c/tools/.cvsignore b/libs/xmlrpc-c/tools/.cvsignore
deleted file mode 100644
index f3c7a7c..0000000
.PHONY: clean
clean: clean-common
+diff --git a/libs/xmlrpc-c/tools/xml-rpc-api2cpp/Makefile.depend b/libs/xmlrpc-c/tools/xml-rpc-api2cpp/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
diff --git a/libs/xmlrpc-c/tools/xml-rpc-api2cpp/README b/libs/xmlrpc-c/tools/xml-rpc-api2cpp/README
deleted file mode 100644
index 4dff2a3..0000000
.PHONY: dep
dep: dep-common
+diff --git a/libs/xmlrpc-c/tools/xmlrpc/Makefile.depend b/libs/xmlrpc-c/tools/xmlrpc/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
diff --git a/libs/xmlrpc-c/tools/xmlrpc/xmlrpc.c b/libs/xmlrpc-c/tools/xmlrpc/xmlrpc.c
index c768b7b..06da3e5 100644
--- a/libs/xmlrpc-c/tools/xmlrpc/xmlrpc.c
.PHONY: dep
dep: dep-common
+diff --git a/libs/xmlrpc-c/tools/xmlrpc_transport/Makefile.depend b/libs/xmlrpc-c/tools/xmlrpc_transport/Makefile.depend
+deleted file mode 100644
+index e69de29..0000000
diff --git a/libs/xmlrpc-c/tools/xmlrpc_transport/xmlrpc_transport b/libs/xmlrpc-c/tools/xmlrpc_transport/xmlrpc_transport
deleted file mode 100755
index e002ec0..0000000
- endif
-endif
-
+diff --git a/libs/xmlrpc-c/transport_config.mk b/libs/xmlrpc-c/transport_config.mk
+new file mode 100644
+index 0000000..5791af6
+--- /dev/null
++++ b/libs/xmlrpc-c/transport_config.mk
+@@ -0,0 +1,39 @@
++# -*-makefile-*- <-- an Emacs control
++
++
++# The make variables herein come from config.mk, which is included
++# by the make file that includes us.
++
++transport_config.h: $(BLDDIR)/config.mk
++ rm -f $@
++ echo '/* This file was generated by a make rule */' >>$@
++ifeq ($(MUST_BUILD_WININET_CLIENT),yes)
++ echo '#define MUST_BUILD_WININET_CLIENT 1' >>$@
++else
++ echo '#define MUST_BUILD_WININET_CLIENT 0' >>$@
++endif
++ifeq ($(MUST_BUILD_CURL_CLIENT),yes)
++ echo '#define MUST_BUILD_CURL_CLIENT 1' >>$@
++else
++ echo '#define MUST_BUILD_CURL_CLIENT 0' >>$@
++endif
++ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes)
++ echo '#define MUST_BUILD_LIBWWW_CLIENT 1' >>$@
++else
++ echo '#define MUST_BUILD_LIBWWW_CLIENT 0' >>$@
++endif
++ echo "static const char * const XMLRPC_DEFAULT_TRANSPORT =" >>$@
++ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes)
++ echo '"libwww";' >>$@
++else
++ ifeq ($(MUST_BUILD_CURL_CLIENT),yes)
++ echo '"curl";' >>$@
++ else
++ ifeq ($(MUST_BUILD_WININET_CLIENT),yes)
++ echo '"wininet";' >>$@
++ else
++ @echo 'ERROR: no client XML transport configured'; rm $@; false
++ endif
++ endif
++endif
++
diff --git a/libs/xmlrpc-c/unix-common.make b/libs/xmlrpc-c/unix-common.make
deleted file mode 100644
index b684c70..0000000
- cd $(DESTDIR)$(LIBINST_DIR); \
- rm -f $(<:%.$(MAJ).$(MIN)=%); \
- $(LN_S) $(<:%.$(MIN)=%) $(<:%.$(MAJ).$(MIN)=%)
+diff --git a/libs/xmlrpc-c/unix-common.mk b/libs/xmlrpc-c/unix-common.mk
+new file mode 100644
+index 0000000..8f5016c
+--- /dev/null
++++ b/libs/xmlrpc-c/unix-common.mk
+@@ -0,0 +1,82 @@
++# -*-makefile-*- <-- an Emacs control
++
++# The including make file must define these make variables:
++#
++# SHARED_LIBS_TO_BUILD: List of the shared libraries that need to be
++# built -- just the basic library names. E.g. "libfoo libbar"
++#
++# SHARED_LIBS_TO_INSTALL: List of the shared libraries that need to be
++# installed -- just the basic library names. E.g. "libfoo libbar"
++#
++# SHLIB_SUFFIX: Shared library filename suffix, e.g. "so".
++#
++# MAJ: Library major version number, e.g. "3" in file name "libfoo.3.1"
++#
++# MIN: Library minor version number, e.g. "1" in file name "libfoo.3.1"
++#
++# LDFLAGS_SHLIB: linker (Ld) flags needed to link object files together into
++# a shared library. May use $(SONAME) for the soname of the library.
++# Include -lc if appropriate.
++#
++# LADD: Additional linker flags (normally set on the make command line).
++#
++# INSTALL_DATA: beginning of shell command to install a library file.
++#
++# DESTDIR: main installation directory
++#
++# LIBINST_DIR: directory in which to install libraries, relative to DESTDIR.
++#
++# LN_S: beginning of shell command to make symbolic link (e.g. "ln -s").
++#
++# CXXLD: beginning of shell command to link, e.g. "g++".
++
++# This make file defines these make variables that the including make file
++# can use:
++#
++# SHLIB_CMD: a command to build a shared library for C linkage
++# You can use this in a rule to build a shared library
++# SHLIBPP_CMD: Same, but for C++ linkage
++
++# Including make file must contain a rule to build each library file
++# (e.g. libfoo.3.1)
++
++# This make file provides these rules:
++#
++# install-shared-libraries: install all shared libraries and the necessary
++# symbolic links.
++
++# SONAME is to be referenced by $(LDFLAGS_SHLIB) in the rule to make
++# a shared library (in common.mk). I.e. $@ is the name of the shared
++# library file.
++
++# SONAME is the name of the library file being built, with the minor
++# version number cut off. E.g. if we're building libfoo.so.1.2, SONAME
++# is libfoo.so.1 .
++SONAME = $(@:%.$(MIN)=%)
++
++SHLIB_CMD = $(CCLD) $(LADD) $(LDFLAGS_SHLIB) -o $@ $^
++
++SHLIB_LE_TARGETS = $(call shliblefn, $(SHARED_LIBS_TO_BUILD))
++
++$(SHLIB_LE_TARGETS):%:%.$(MAJ).$(MIN)
++ rm -f $@
++ $(LN_S) $< $@
++
++.PHONY: $(SHLIB_INSTALL_TARGETS)
++.PHONY: install-shared-libraries
++
++SHLIB_INSTALL_TARGETS = $(SHARED_LIBS_TO_INSTALL:%=%/install)
++
++#SHLIB_INSTALL_TARGETS is like "libfoo/install libbar/install"
++
++install-shared-libraries: $(SHLIB_INSTALL_TARGETS)
++
++$(SHLIB_INSTALL_TARGETS):%/install:%.$(SHLIB_SUFFIX).$(MAJ).$(MIN)
++# $< is a library file name, e.g. libfoo.so.3.1 .
++ $(INSTALL_SHLIB) $< $(DESTDIR)$(LIBINST_DIR)/$<
++ cd $(DESTDIR)$(LIBINST_DIR); \
++ rm -f $(<:%.$(MIN)=%); \
++ $(LN_S) $< $(<:%.$(MIN)=%)
++ cd $(DESTDIR)$(LIBINST_DIR); \
++ rm -f $(<:%.$(MAJ).$(MIN)=%); \
++ $(LN_S) $(<:%.$(MIN)=%) $(<:%.$(MAJ).$(MIN)=%)
diff --git a/libs/xmlrpc-c/version.h b/libs/xmlrpc-c/version.h
deleted file mode 100644
index 18e70f2..0000000
-#define XMLRPC_VERSION_MINOR 14
-#define XMLRPC_VERSION_POINT 99
-#endif
+diff --git a/libs/xmlrpc-c/version.mk b/libs/xmlrpc-c/version.mk
+new file mode 100644
+index 0000000..b59310a
+--- /dev/null
++++ b/libs/xmlrpc-c/version.mk
+@@ -0,0 +1,11 @@
++###############################################################################
++# This is not only a make file inclusion, but a source file for the program
++# 'mkvers' in the Windows build system. The latter is very particular about
++# the format of this file. Do not change white space, add comment lines, or
++# anything!
++#
++#
++###############################################################################
++XMLRPC_MAJOR_RELEASE = 1
++XMLRPC_MINOR_RELEASE = 26
++XMLRPC_POINT_RELEASE = 0
diff --git a/libs/xmlrpc-c/xmlrpc-c-config.in b/libs/xmlrpc-c/xmlrpc-c-config.in
deleted file mode 100644
index 2095b5f..0000000
+
+
diff --git a/src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.2010.vcxproj b/src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.2010.vcxproj
-index a57eaf0..f95e975 100644
+index a57eaf0..3471e07 100644
--- a/src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.2010.vcxproj
+++ b/src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.2010.vcxproj
-@@ -1,167 +1,155 @@
--<?xml version="1.0" encoding="utf-8"?>\r
--<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-- <ItemGroup Label="ProjectConfigurations">\r
-- <ProjectConfiguration Include="Debug|Win32">\r
-- <Configuration>Debug</Configuration>\r
-- <Platform>Win32</Platform>\r
-- </ProjectConfiguration>\r
-- <ProjectConfiguration Include="Debug|x64">\r
-- <Configuration>Debug</Configuration>\r
-- <Platform>x64</Platform>\r
-- </ProjectConfiguration>\r
-- <ProjectConfiguration Include="Release|Win32">\r
-- <Configuration>Release</Configuration>\r
-- <Platform>Win32</Platform>\r
-- </ProjectConfiguration>\r
-- <ProjectConfiguration Include="Release|x64">\r
-- <Configuration>Release</Configuration>\r
-- <Platform>x64</Platform>\r
-- </ProjectConfiguration>\r
-- </ItemGroup>\r
-- <PropertyGroup Label="Globals">\r
-- <ProjectName>mod_xml_rpc</ProjectName>\r
-- <ProjectGuid>{CBEC7225-0C21-4DA8-978E-1F158F8AD950}</ProjectGuid>\r
-- <RootNamespace>mod_xml_rpc</RootNamespace>\r
-- <Keyword>Win32Proj</Keyword>\r
-- </PropertyGroup>\r
-- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
-- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
-- <ConfigurationType>DynamicLibrary</ConfigurationType>\r
-- <CharacterSet>MultiByte</CharacterSet>\r
-- </PropertyGroup>\r
-- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
-- <ConfigurationType>DynamicLibrary</ConfigurationType>\r
-- <CharacterSet>MultiByte</CharacterSet>\r
-- </PropertyGroup>\r
-- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
-- <ConfigurationType>DynamicLibrary</ConfigurationType>\r
-- <CharacterSet>MultiByte</CharacterSet>\r
-- </PropertyGroup>\r
-- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
-- <ConfigurationType>DynamicLibrary</ConfigurationType>\r
-- <CharacterSet>MultiByte</CharacterSet>\r
-- </PropertyGroup>\r
-- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
-- <ImportGroup Label="ExtensionSettings">\r
-- </ImportGroup>\r
-- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">\r
-- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
-- <Import Project="..\..\..\..\w32\module_release.props" />\r
+@@ -47,22 +47,18 @@
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">\r
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+ <Import Project="..\..\..\..\w32\module_release.props" />\r
- <Import Project="..\..\..\..\w32\curl.props" />\r
-- </ImportGroup>\r
-- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">\r
-- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
-- <Import Project="..\..\..\..\w32\module_debug.props" />\r
+ </ImportGroup>\r
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">\r
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+ <Import Project="..\..\..\..\w32\module_debug.props" />\r
- <Import Project="..\..\..\..\w32\curl.props" />\r
-- </ImportGroup>\r
-- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">\r
-- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
-- <Import Project="..\..\..\..\w32\module_release.props" />\r
+ </ImportGroup>\r
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">\r
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+ <Import Project="..\..\..\..\w32\module_release.props" />\r
- <Import Project="..\..\..\..\w32\curl.props" />\r
-- </ImportGroup>\r
-- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">\r
-- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
-- <Import Project="..\..\..\..\w32\module_debug.props" />\r
+ </ImportGroup>\r
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">\r
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
+ <Import Project="..\..\..\..\w32\module_debug.props" />\r
- <Import Project="..\..\..\..\w32\curl.props" />\r
-- </ImportGroup>\r
-- <PropertyGroup Label="UserMacros" />\r
-- <PropertyGroup>\r
-- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>\r
-- </PropertyGroup>\r
-- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
-- <ClCompile>\r
+ </ImportGroup>\r
+ <PropertyGroup Label="UserMacros" />\r
+ <PropertyGroup>\r
+@@ -70,7 +66,7 @@
+ </PropertyGroup>\r
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+ <ClCompile>\r
- <AdditionalIncludeDirectories>%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\include;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\lib\abyss\src;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\lib\util\include;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\Windows;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-- <PreprocessorDefinitions>ABYSS_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-- <PrecompiledHeader>\r
-- </PrecompiledHeader>\r
-- </ClCompile>\r
-- <Link>\r
-- <AdditionalLibraryDirectories>..\..\..\..\libs\xmlrpc\lib;..\..\..\..\libs\xmlrpc\lib\abyss\src\$(OutDir);..\..\..\..\libs\apr-util\xml\expat\lib\LibD;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-- <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
-- <DataExecutionPrevention>\r
-- </DataExecutionPrevention>\r
-- </Link>\r
-- </ItemDefinitionGroup>\r
-- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
-- <Midl>\r
-- <TargetEnvironment>X64</TargetEnvironment>\r
-- </Midl>\r
-- <ClCompile>\r
++ <AdditionalIncludeDirectories>$(SolutionDir)libs\xmlrpc-c\include;$(SolutionDir)libs\xmlrpc-c\lib\abyss\src;$(SolutionDir)libs\xmlrpc-c\lib\util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+ <PreprocessorDefinitions>ABYSS_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+ <PrecompiledHeader>\r
+ </PrecompiledHeader>\r
+@@ -87,7 +83,7 @@
+ <TargetEnvironment>X64</TargetEnvironment>\r
+ </Midl>\r
+ <ClCompile>\r
- <AdditionalIncludeDirectories>%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\include;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\lib\abyss\src;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\lib\util\include;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\Windows;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-- <PreprocessorDefinitions>ABYSS_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-- <PrecompiledHeader>\r
-- </PrecompiledHeader>\r
-- </ClCompile>\r
-- <Link>\r
-- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-- <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
-- <DataExecutionPrevention>\r
-- </DataExecutionPrevention>\r
-- <TargetMachine>MachineX64</TargetMachine>\r
-- </Link>\r
-- </ItemDefinitionGroup>\r
-- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
-- <ClCompile>\r
++ <AdditionalIncludeDirectories>$(SolutionDir)libs\xmlrpc-c\include;$(SolutionDir)libs\xmlrpc-c\lib\abyss\src;$(SolutionDir)libs\xmlrpc-c\lib\util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+ <PreprocessorDefinitions>ABYSS_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+ <PrecompiledHeader>\r
+ </PrecompiledHeader>\r
+@@ -102,7 +98,7 @@
+ </ItemDefinitionGroup>\r
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+ <ClCompile>\r
- <AdditionalIncludeDirectories>%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\include;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\lib\abyss\src;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\lib\util\include;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\Windows;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-- <PreprocessorDefinitions>ABYSS_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-- <PrecompiledHeader>\r
-- </PrecompiledHeader>\r
-- </ClCompile>\r
-- <Link>\r
-- <AdditionalLibraryDirectories>..\..\..\..\libs\xmlrpc\lib;..\..\..\..\libs\xmlrpc\lib\abyss\src\$(OutDir);..\..\..\..\libs\apr-util\xml\expat\lib\LibR;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-- <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
-- <DataExecutionPrevention>\r
-- </DataExecutionPrevention>\r
-- </Link>\r
-- </ItemDefinitionGroup>\r
-- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
-- <Midl>\r
-- <TargetEnvironment>X64</TargetEnvironment>\r
-- </Midl>\r
-- <ClCompile>\r
++ <AdditionalIncludeDirectories>$(SolutionDir)libs\xmlrpc-c\include;$(SolutionDir)libs\xmlrpc-c\lib\abyss\src;$(SolutionDir)libs\xmlrpc-c\lib\util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+ <PreprocessorDefinitions>ABYSS_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+ <PrecompiledHeader>\r
+ </PrecompiledHeader>\r
+@@ -119,7 +115,7 @@
+ <TargetEnvironment>X64</TargetEnvironment>\r
+ </Midl>\r
+ <ClCompile>\r
- <AdditionalIncludeDirectories>%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\include;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\lib\abyss\src;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\lib\util\include;%(RootDir)%(Directory)..\..\..\..\libs\xmlrpc-c\Windows;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-- <PreprocessorDefinitions>ABYSS_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-- <PrecompiledHeader>\r
-- </PrecompiledHeader>\r
-- </ClCompile>\r
-- <Link>\r
-- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-- <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
-- <DataExecutionPrevention>\r
-- </DataExecutionPrevention>\r
-- <TargetMachine>MachineX64</TargetMachine>\r
-- </Link>\r
-- </ItemDefinitionGroup>\r
-- <ItemGroup>\r
-- <ClCompile Include="mod_xml_rpc.c" />\r
-- </ItemGroup>\r
-- <ItemGroup>\r
++ <AdditionalIncludeDirectories>$(SolutionDir)libs\xmlrpc-c\include;$(SolutionDir)libs\xmlrpc-c\lib\abyss\src;$(SolutionDir)libs\xmlrpc-c\lib\util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+ <PreprocessorDefinitions>ABYSS_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+ <PrecompiledHeader>\r
+ </PrecompiledHeader>\r
+@@ -136,25 +132,17 @@
+ <ClCompile Include="mod_xml_rpc.c" />\r
+ </ItemGroup>\r
+ <ItemGroup>\r
- <ProjectReference Include="..\..\..\..\libs\win32\curl\curllib.2010.vcxproj">\r
- <Project>{87ee9da4-de1e-4448-8324-183c98dca588}</Project>\r
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>\r
- </ProjectReference>\r
- <ProjectReference Include="..\..\..\..\libs\xmlrpc-c\Windows\abyss.2010.vcxproj">\r
-- <Project>{d2396dd7-7d38-473a-abb7-6f96d65ae1b9}</Project>\r
++ <ProjectReference Include="..\..\..\..\libs\win32\xmlrpc-c\abyss.2010.vcxproj">\r
+ <Project>{d2396dd7-7d38-473a-abb7-6f96d65ae1b9}</Project>\r
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>\r
-- </ProjectReference>\r
+ </ProjectReference>\r
- <ProjectReference Include="..\..\..\..\libs\xmlrpc-c\Windows\xmlparse.2010.vcxproj">\r
-- <Project>{0d108721-eae8-4baf-8102-d8960ec93647}</Project>\r
++ <ProjectReference Include="..\..\..\..\libs\win32\xmlrpc-c\xmlparse.2010.vcxproj">\r
+ <Project>{0d108721-eae8-4baf-8102-d8960ec93647}</Project>\r
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>\r
-- </ProjectReference>\r
+ </ProjectReference>\r
- <ProjectReference Include="..\..\..\..\libs\xmlrpc-c\Windows\xmlrpc.2010.vcxproj">\r
-- <Project>{cee544a9-0303-44c2-8ece-efa7d7bcbbba}</Project>\r
++ <ProjectReference Include="..\..\..\..\libs\win32\xmlrpc-c\xmlrpc.2010.vcxproj">\r
+ <Project>{cee544a9-0303-44c2-8ece-efa7d7bcbbba}</Project>\r
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>\r
-- </ProjectReference>\r
+ </ProjectReference>\r
- <ProjectReference Include="..\..\..\..\libs\xmlrpc-c\Windows\xmltok.2010.vcxproj">\r
-- <Project>{b535402e-38d2-4d54-8360-423acbd17192}</Project>\r
-- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>\r
-- </ProjectReference>\r
-- <ProjectReference Include="..\..\..\..\w32\Library\FreeSwitchCore.2010.vcxproj">\r
-- <Project>{202d7a4e-760d-4d0e-afa1-d7459ced30ff}</Project>\r
++ <ProjectReference Include="..\..\..\..\libs\win32\xmlrpc-c\xmltok.2010.vcxproj">\r
+ <Project>{b535402e-38d2-4d54-8360-423acbd17192}</Project>\r
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>\r
-- </ProjectReference>\r
-- </ItemGroup>\r
-- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
-- <ImportGroup Label="ExtensionTargets">\r
-- </ImportGroup>\r
-+<?xml version="1.0" encoding="utf-8"?>
-+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-+ <ItemGroup Label="ProjectConfigurations">
-+ <ProjectConfiguration Include="Debug|Win32">
-+ <Configuration>Debug</Configuration>
-+ <Platform>Win32</Platform>
-+ </ProjectConfiguration>
-+ <ProjectConfiguration Include="Debug|x64">
-+ <Configuration>Debug</Configuration>
-+ <Platform>x64</Platform>
-+ </ProjectConfiguration>
-+ <ProjectConfiguration Include="Release|Win32">
-+ <Configuration>Release</Configuration>
-+ <Platform>Win32</Platform>
-+ </ProjectConfiguration>
-+ <ProjectConfiguration Include="Release|x64">
-+ <Configuration>Release</Configuration>
-+ <Platform>x64</Platform>
-+ </ProjectConfiguration>
-+ </ItemGroup>
-+ <PropertyGroup Label="Globals">
-+ <ProjectName>mod_xml_rpc</ProjectName>
-+ <ProjectGuid>{CBEC7225-0C21-4DA8-978E-1F158F8AD950}</ProjectGuid>
-+ <RootNamespace>mod_xml_rpc</RootNamespace>
-+ <Keyword>Win32Proj</Keyword>
-+ </PropertyGroup>
-+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
-+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
-+ <ConfigurationType>DynamicLibrary</ConfigurationType>
-+ <CharacterSet>MultiByte</CharacterSet>
-+ </PropertyGroup>
-+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
-+ <ConfigurationType>DynamicLibrary</ConfigurationType>
-+ <CharacterSet>MultiByte</CharacterSet>
-+ </PropertyGroup>
-+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
-+ <ConfigurationType>DynamicLibrary</ConfigurationType>
-+ <CharacterSet>MultiByte</CharacterSet>
-+ </PropertyGroup>
-+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
-+ <ConfigurationType>DynamicLibrary</ConfigurationType>
-+ <CharacterSet>MultiByte</CharacterSet>
-+ </PropertyGroup>
-+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
-+ <ImportGroup Label="ExtensionSettings">
-+ </ImportGroup>
-+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
-+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-+ <Import Project="..\..\..\..\w32\module_release.props" />
-+ </ImportGroup>
-+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
-+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-+ <Import Project="..\..\..\..\w32\module_debug.props" />
-+ </ImportGroup>
-+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
-+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-+ <Import Project="..\..\..\..\w32\module_release.props" />
-+ </ImportGroup>
-+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
-+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-+ <Import Project="..\..\..\..\w32\module_debug.props" />
-+ </ImportGroup>
-+ <PropertyGroup Label="UserMacros" />
-+ <PropertyGroup>
-+ <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
-+ </PropertyGroup>
-+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
-+ <ClCompile>
-+ <AdditionalIncludeDirectories>$(SolutionDir)libs\xmlrpc-c\include;$(SolutionDir)libs\xmlrpc-c\lib\abyss\src;$(SolutionDir)libs\xmlrpc-c\lib\util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-+ <PreprocessorDefinitions>ABYSS_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-+ <PrecompiledHeader>
-+ </PrecompiledHeader>
-+ </ClCompile>
-+ <Link>
-+ <AdditionalLibraryDirectories>..\..\..\..\libs\xmlrpc\lib;..\..\..\..\libs\xmlrpc\lib\abyss\src\$(OutDir);..\..\..\..\libs\apr-util\xml\expat\lib\LibD;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
-+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
-+ <DataExecutionPrevention>
-+ </DataExecutionPrevention>
-+ </Link>
-+ </ItemDefinitionGroup>
-+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
-+ <Midl>
-+ <TargetEnvironment>X64</TargetEnvironment>
-+ </Midl>
-+ <ClCompile>
-+ <AdditionalIncludeDirectories>$(SolutionDir)libs\xmlrpc-c\include;$(SolutionDir)libs\xmlrpc-c\lib\abyss\src;$(SolutionDir)libs\xmlrpc-c\lib\util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-+ <PreprocessorDefinitions>ABYSS_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-+ <PrecompiledHeader>
-+ </PrecompiledHeader>
-+ </ClCompile>
-+ <Link>
-+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
-+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
-+ <DataExecutionPrevention>
-+ </DataExecutionPrevention>
-+ <TargetMachine>MachineX64</TargetMachine>
-+ </Link>
-+ </ItemDefinitionGroup>
-+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
-+ <ClCompile>
-+ <AdditionalIncludeDirectories>$(SolutionDir)libs\xmlrpc-c\include;$(SolutionDir)libs\xmlrpc-c\lib\abyss\src;$(SolutionDir)libs\xmlrpc-c\lib\util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-+ <PreprocessorDefinitions>ABYSS_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-+ <PrecompiledHeader>
-+ </PrecompiledHeader>
-+ </ClCompile>
-+ <Link>
-+ <AdditionalLibraryDirectories>..\..\..\..\libs\xmlrpc\lib;..\..\..\..\libs\xmlrpc\lib\abyss\src\$(OutDir);..\..\..\..\libs\apr-util\xml\expat\lib\LibR;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
-+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
-+ <DataExecutionPrevention>
-+ </DataExecutionPrevention>
-+ </Link>
-+ </ItemDefinitionGroup>
-+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
-+ <Midl>
-+ <TargetEnvironment>X64</TargetEnvironment>
-+ </Midl>
-+ <ClCompile>
-+ <AdditionalIncludeDirectories>$(SolutionDir)libs\xmlrpc-c\include;$(SolutionDir)libs\xmlrpc-c\lib\abyss\src;$(SolutionDir)libs\xmlrpc-c\lib\util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-+ <PreprocessorDefinitions>ABYSS_WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
-+ <PrecompiledHeader>
-+ </PrecompiledHeader>
-+ </ClCompile>
-+ <Link>
-+ <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
-+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
-+ <DataExecutionPrevention>
-+ </DataExecutionPrevention>
-+ <TargetMachine>MachineX64</TargetMachine>
-+ </Link>
-+ </ItemDefinitionGroup>
-+ <ItemGroup>
-+ <ClCompile Include="mod_xml_rpc.c" />
-+ </ItemGroup>
-+ <ItemGroup>
-+ <ProjectReference Include="..\..\..\..\libs\win32\xmlrpc-c\abyss.2010.vcxproj">
-+ <Project>{d2396dd7-7d38-473a-abb7-6f96d65ae1b9}</Project>
-+ </ProjectReference>
-+ <ProjectReference Include="..\..\..\..\libs\win32\xmlrpc-c\xmlparse.2010.vcxproj">
-+ <Project>{0d108721-eae8-4baf-8102-d8960ec93647}</Project>
-+ </ProjectReference>
-+ <ProjectReference Include="..\..\..\..\libs\win32\xmlrpc-c\xmlrpc.2010.vcxproj">
-+ <Project>{cee544a9-0303-44c2-8ece-efa7d7bcbbba}</Project>
-+ </ProjectReference>
-+ <ProjectReference Include="..\..\..\..\libs\win32\xmlrpc-c\xmltok.2010.vcxproj">
-+ <Project>{b535402e-38d2-4d54-8360-423acbd17192}</Project>
-+ </ProjectReference>
-+ <ProjectReference Include="..\..\..\..\w32\Library\FreeSwitchCore.2010.vcxproj">
-+ <Project>{202d7a4e-760d-4d0e-afa1-d7459ced30ff}</Project>
-+ <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
-+ </ProjectReference>
-+ </ItemGroup>
-+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
-+ <ImportGroup Label="ExtensionTargets">
-+ </ImportGroup>
- </Project>
-\ No newline at end of file
+ </ProjectReference>\r
+ <ProjectReference Include="..\..\..\..\w32\Library\FreeSwitchCore.2010.vcxproj">\r
+ <Project>{202d7a4e-760d-4d0e-afa1-d7459ced30ff}</Project>\r
diff --git a/src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.c b/src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.c
index 9b20546..4489cfc 100644
--- a/src/mod/xml_int/mod_xml_rpc/mod_xml_rpc.c
SWITCH_DECLARE(switch_xml_t) switch_xml_insert(switch_xml_t xml, switch_xml_t dest, switch_size_t off)
{
switch_xml_t cur, prev, head;
+diff --git a/w32/xmlrpc.props b/w32/xmlrpc.props
+new file mode 100644
+index 0000000..ac0fc55
+--- /dev/null
++++ b/w32/xmlrpc.props
+@@ -0,0 +1,15 @@
++<?xml version="1.0" encoding="utf-8"?>\r
++<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
++ <ImportGroup Label="PropertySheets">\r
++ </ImportGroup>\r
++ <PropertyGroup Label="UserMacros">\r
++ <XMLRPCDir>$(SolutionDir)libs\xmlrpc-c\</XMLRPCDir>\r
++ </PropertyGroup>\r
++ <ItemDefinitionGroup>\r
++ <ClCompile>\r
++ <AdditionalIncludeDirectories>$(XMLRPCDir);$(XMLRPCDir)include;$(XMLRPCDir)lib\util\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
++ </ClCompile>\r
++ <Link>\r
++ </Link>\r
++ </ItemDefinitionGroup>\r
++</Project>
+\ No newline at end of file
+diff --git a/w32/xmlrpc.vsprops b/w32/xmlrpc.vsprops
+new file mode 100644
+index 0000000..eae9700
+--- /dev/null
++++ b/w32/xmlrpc.vsprops
+@@ -0,0 +1,15 @@
++<?xml version="1.0" encoding="windows-1251"?>\r
++<VisualStudioPropertySheet\r
++ ProjectType="Visual C++"\r
++ Version="8.00"\r
++ Name="xmlrpc"\r
++ >\r
++ <Tool\r
++ Name="VCCLCompilerTool"\r
++ AdditionalIncludeDirectories=""$(XMLRPCDir)";"$(XMLRPCDir)include";"$(XMLRPCDir)lib\util\include";%(AdditionalIncludeDirectories)"\r
++ />\r
++ <UserMacro\r
++ Name="XMLRPCDir"\r
++ Value="$(SolutionDir)libs\xmlrpc-c\"\r
++ />\r
++</VisualStudioPropertySheet>\r