Generate VS2010 solution file
diff --git a/scripts/data_files/vs2010-sln-template.sln b/scripts/data_files/vs2010-sln-template.sln
new file mode 100644
index 0000000..c4c8613
--- /dev/null
+++ b/scripts/data_files/vs2010-sln-template.sln
@@ -0,0 +1,28 @@
+

+Microsoft Visual Studio Solution File, Format Version 11.00

+# Visual C++ Express 2010

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PolarSSL", "PolarSSL.vcxproj", "{46CF2D25-6A36-4189-B59C-E4815388E554}"

+EndProject

+APP_ENTRIES

+Global

+	GlobalSection(SolutionConfigurationPlatforms) = preSolution

+		Debug|Win32 = Debug|Win32

+		Debug|x64 = Debug|x64

+		Release|Win32 = Release|Win32

+		Release|x64 = Release|x64

+	EndGlobalSection

+	GlobalSection(ProjectConfigurationPlatforms) = postSolution

+		{46CF2D25-6A36-4189-B59C-E4815388E554}.Debug|Win32.ActiveCfg = Debug|Win32

+		{46CF2D25-6A36-4189-B59C-E4815388E554}.Debug|Win32.Build.0 = Debug|Win32

+		{46CF2D25-6A36-4189-B59C-E4815388E554}.Debug|x64.ActiveCfg = Debug|x64

+		{46CF2D25-6A36-4189-B59C-E4815388E554}.Debug|x64.Build.0 = Debug|x64

+		{46CF2D25-6A36-4189-B59C-E4815388E554}.Release|Win32.ActiveCfg = Release|Win32

+		{46CF2D25-6A36-4189-B59C-E4815388E554}.Release|Win32.Build.0 = Release|Win32

+		{46CF2D25-6A36-4189-B59C-E4815388E554}.Release|x64.ActiveCfg = Release|x64

+		{46CF2D25-6A36-4189-B59C-E4815388E554}.Release|x64.Build.0 = Release|x64

+CONF_ENTRIES

+	EndGlobalSection

+	GlobalSection(SolutionProperties) = preSolution

+		HideSolutionNode = FALSE

+	EndGlobalSection

+EndGlobal

diff --git a/scripts/update_vs_apps.pl b/scripts/update_vs_apps.pl
index 76fc59f..2ffdace 100755
--- a/scripts/update_vs_apps.pl
+++ b/scripts/update_vs_apps.pl
@@ -23,6 +23,8 @@
 my $vsx_app_tpl_file = "scripts/data_files/vs2010-app-template.$vsx_ext";
 my $vsx_main_tpl_file = "scripts/data_files/vs2010-main-template.$vsx_ext";
 my $vsx_main_file = "$vsx_dir/PolarSSL.$vsx_ext";
+my $vsx_sln_tpl_file = "scripts/data_files/vs2010-sln-template.sln";
+my $vsx_sln_file = "$vsx_dir/PolarSSL.sln";
 
 my $programs_dir = 'programs';
 my $header_dir = 'include/polarssl';
@@ -61,6 +63,25 @@
     <ClCompile Include="..\\..\\{NAME}" />\r
 EOT
 
+my $vsx_sln_app_entry_tpl = <<EOT;
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "{APPNAME}", "{APPNAME}.vcxproj", "{GUID}"\r
+	ProjectSection(ProjectDependencies) = postProject\r
+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}\r
+	EndProjectSection\r
+EndProject\r
+EOT
+
+my $vsx_sln_conf_entry_tpl = <<EOT;
+		{GUID}.Debug|Win32.ActiveCfg = Debug|Win32\r
+		{GUID}.Debug|Win32.Build.0 = Debug|Win32\r
+		{GUID}.Debug|x64.ActiveCfg = Debug|x64\r
+		{GUID}.Debug|x64.Build.0 = Debug|x64\r
+		{GUID}.Release|Win32.ActiveCfg = Release|Win32\r
+		{GUID}.Release|Win32.Build.0 = Release|Win32\r
+		{GUID}.Release|x64.ActiveCfg = Release|x64\r
+		{GUID}.Release|x64.Build.0 = Release|x64\r
+EOT
+
 exit( main() );
 
 sub check_dirs {
@@ -168,6 +189,35 @@
     close $fh;
 }
 
+sub gen_vsx_solution {
+    my (@app_names) = @_;
+
+    my ($app_entries, $conf_entries);
+    for my $path (@app_names) {
+        my $guid = gen_app_guid( $path );
+        (my $appname = $path) =~ s!.*/!!;
+
+        my $app_entry = $vsx_sln_app_entry_tpl;
+        $app_entry =~ s/{APPNAME}/$appname/g;
+        $app_entry =~ s/{GUID}/$guid/g;
+
+        $app_entries .= $app_entry;
+
+        my $conf_entry = $vsx_sln_conf_entry_tpl;
+        $conf_entry =~ s/{GUID}/$guid/g;
+
+        $conf_entries .= $conf_entry;
+    }
+
+    my $out = slurp_file( $vsx_sln_tpl_file );
+    $out =~ s/APP_ENTRIES\r\n/$app_entries/m;
+    $out =~ s/CONF_ENTRIES\r\n/$conf_entries/m;
+
+    open my $fh, '>', $vsx_sln_file or die;
+    print $fh $out;
+    close $fh;
+}
+
 sub main {
     if( ! check_dirs() ) {
         chdir '..' or die;
@@ -197,6 +247,9 @@
     gen_vs6_workspace( @app_list );
     print "done.\n";
 
+    print "Generating VS2010 solution file... ";
+    gen_vsx_solution( @app_list );
+    print "done.\n";
 
     return 0;
 }
diff --git a/visualc/VS2010/PolarSSL.sln b/visualc/VS2010/PolarSSL.sln
index e049652..c46a91a 100644
--- a/visualc/VS2010/PolarSSL.sln
+++ b/visualc/VS2010/PolarSSL.sln
@@ -3,109 +3,220 @@
 # Visual C++ Express 2010

 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PolarSSL", "PolarSSL.vcxproj", "{46CF2D25-6A36-4189-B59C-E4815388E554}"

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "selftest", "selftest.vcxproj", "{4B44D0A4-DE85-4C15-A1FF-A334C0A1EFF2}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "aescrypt2", "aescrypt2.vcxproj", "{46298485-CE22-B800-3D95-6D6C821819A1}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "benchmark", "benchmark.vcxproj", "{F52B9FFC-0E87-4816-BB2D-711CFC1E8955}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "crypt_and_hash", "crypt_and_hash.vcxproj", "{84F76F01-FA6C-7C48-1979-06FD24B476C1}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl_client2", "ssl_client2.vcxproj", "{6418ABBB-6D56-4D26-A7E8-69A47B61F7EB}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hello", "hello.vcxproj", "{7076F38E-EDC4-1A0C-8D9B-CFB0A3E9724F}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl_client1", "ssl_client1.vcxproj", "{E0DC7623-13A7-48DF-A42F-8585FA533894}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "generic_sum", "generic_sum.vcxproj", "{7036A174-35D6-54AE-7613-A50F5FD8AF86}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl_server", "ssl_server.vcxproj", "{EDF3B291-9D85-49EC-8CF4-27EA9096BCCB}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "md5sum", "md5sum.vcxproj", "{D4F79297-4960-6D63-D50E-5823C50ED124}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "aescrypt2", "aescrypt2.vcxproj", "{54880004-9AA2-434D-A2F0-7F59D6F1536A}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sha1sum", "sha1sum.vcxproj", "{A0278E64-D98F-842D-438A-6747411CE76F}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "crypt_and_hash", "crypt_and_hash.vcxproj", "{B9CD06FA-D063-4AFE-BF05-1348142274D7}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sha2sum", "sha2sum.vcxproj", "{BAF92F6C-E5BE-95B7-6E36-823A1779A818}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dh_client", "dh_client.vcxproj", "{E3F6459F-183D-4604-8A42-3F1C84A7C119}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dh_client", "dh_client.vcxproj", "{92253FCF-72E1-7AF6-EAD1-E9037A194C9F}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dh_genprime", "dh_genprime.vcxproj", "{83BCC55C-5216-41BD-865B-E38FAB399454}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dh_genprime", "dh_genprime.vcxproj", "{8972AF2C-6333-2827-F75D-3BAC5E07915A}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dh_server", "dh_server.vcxproj", "{17D1A1DA-6803-4AA1-A0DB-566E00D7593C}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dh_server", "dh_server.vcxproj", "{9BB33B8B-A1D3-ABEF-9071-D92289A4CEED}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "generic_sum", "generic_sum.vcxproj", "{BE21679A-D26E-4A26-BC4F-382F57A33480}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gen_key", "gen_key.vcxproj", "{7721EBA2-C892-AD9B-4994-A0E988BA4BF8}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "md5sum", "md5sum.vcxproj", "{7FEC406E-95C5-4CC7-9CE7-8EA014AF5E15}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "key_app", "key_app.vcxproj", "{5129B724-3FB6-CE34-FF51-57031A33C50B}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mpi_demo", "mpi_demo.vcxproj", "{E6999C98-6F20-4ED8-A791-69930800728F}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "key_app_writer", "key_app_writer.vcxproj", "{090B665D-0F4C-4D77-D1B1-A6D882842AA3}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rsa_genkey", "rsa_genkey.vcxproj", "{914C3FB6-43A6-4FB6-875C-870DF0553035}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mpi_demo", "mpi_demo.vcxproj", "{08A79AF8-5B8A-4343-D01A-B8AB47F3366C}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rsa_sign", "rsa_sign.vcxproj", "{27FA2978-988C-4918-AF10-FC9613B66CDB}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pk_decrypt", "pk_decrypt.vcxproj", "{C69CD150-7174-FA91-9E6E-B7DDD56FDE8E}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rsa_sign_pss", "rsa_sign_pss.vcxproj", "{FAAA2021-DF20-436F-AE12-9AD91C34C0B4}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pk_encrypt", "pk_encrypt.vcxproj", "{239051A9-0CE6-7730-7BB0-83599DC37AA4}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rsa_verify", "rsa_verify.vcxproj", "{4485C157-39E7-4A97-93DC-80F794E37450}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pk_sign", "pk_sign.vcxproj", "{EBDBB632-13A2-45F8-A44E-4837F6467512}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rsa_verify_pss", "rsa_verify_pss.vcxproj", "{22142D77-6986-4C71-8386-0184A8E7A1E6}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pk_verify", "pk_verify.vcxproj", "{CA8D1EDA-2881-55E0-8F1C-B379B5AA7B56}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sha1sum", "sha1sum.vcxproj", "{15F21E24-7810-4B51-AF44-69F9062E35A0}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rsa_genkey", "rsa_genkey.vcxproj", "{AD5B2F84-44A2-8D21-D47D-07E0ED7E0AAD}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sha2sum", "sha2sum.vcxproj", "{97A7EBB4-A76D-40CA-8E30-C10F2EB0B324}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rsa_decrypt", "rsa_decrypt.vcxproj", "{7E3D99BD-3D9E-762A-E235-9C8275E7010F}"

 	ProjectSection(ProjectDependencies) = postProject

 		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

 	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gen_random_havege", "gen_random_havege.vcxproj", "{CFA36CC7-515C-4E18-8F8F-5B56AB903352}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rsa_encrypt", "rsa_encrypt.vcxproj", "{DA85604D-9ED1-FD08-4F37-FBD33E5E3642}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

 EndProject

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gen_random_ctr_drbg", "gen_random_ctr_drbg.vcxproj", "{316E338C-6DC1-4D11-81C1-91F20E92AB04}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rsa_sign", "rsa_sign.vcxproj", "{CFC883CE-9BAE-B26F-B08B-7F194AD35929}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rsa_verify", "rsa_verify.vcxproj", "{77834257-2878-A38D-AEBE-79423968B6DB}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rsa_sign_pss", "rsa_sign_pss.vcxproj", "{34A00BC1-32A6-5145-606F-F081D31CC1D1}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rsa_verify_pss", "rsa_verify_pss.vcxproj", "{DAD91B2F-DEC8-E94F-8D9A-66B6E237AF07}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl_client1", "ssl_client1.vcxproj", "{CE90D346-EBC0-D292-6D68-24717DB3F510}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl_client2", "ssl_client2.vcxproj", "{436AF1C2-99E7-32FA-5BFA-641F1FF2C57D}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl_server", "ssl_server.vcxproj", "{C49B1EF8-D169-70C5-2FA4-837A900267A7}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl_server2", "ssl_server2.vcxproj", "{870B39B9-8F38-D9A4-8A07-87047C565061}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl_fork_server", "ssl_fork_server.vcxproj", "{D8295912-D341-F4E4-DC8E-98A2A0604221}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl_mail_client", "ssl_mail_client.vcxproj", "{68EFA4E3-08B0-2925-0EF6-177996B08B24}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gen_entropy", "gen_entropy.vcxproj", "{2E5B8634-26AC-5819-5AF7-16F996A7F529}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gen_random_havege", "gen_random_havege.vcxproj", "{D93D1FF0-5E83-2247-31A0-017D20F8011F}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gen_random_ctr_drbg", "gen_random_ctr_drbg.vcxproj", "{C5DF2F0C-3EFC-E5D6-7FD2-AD599CADDB15}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl_cert_test", "ssl_cert_test.vcxproj", "{173A0BC9-FF81-3C36-7887-4FBD6032C9FD}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "benchmark", "benchmark.vcxproj", "{58A8E53D-21CB-5F27-5111-737EBD3F37A0}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "selftest", "selftest.vcxproj", "{4DD758B5-6FC5-66C0-1D26-22C74C88FEF3}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssl_test", "ssl_test.vcxproj", "{0FC4D326-CF64-AB19-B037-3E3D06EA6798}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pem2der", "pem2der.vcxproj", "{ACFFE3C9-3628-9B99-E0C9-36CF95F86B5F}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "strerror", "strerror.vcxproj", "{9D625831-AF31-CFBA-8855-61C024DA2DE0}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cert_app", "cert_app.vcxproj", "{E3172E20-4935-69C7-A398-C13EAA76818F}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "crl_app", "crl_app.vcxproj", "{10F967D6-468F-3BCA-2D58-36A32E376930}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

+EndProject

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cert_req", "cert_req.vcxproj", "{5ABF68F6-5360-DE1F-74B6-66ED5BF52619}"

+	ProjectSection(ProjectDependencies) = postProject

+		{46CF2D25-6A36-4189-B59C-E4815388E554} = {46CF2D25-6A36-4189-B59C-E4815388E554}

+	EndProjectSection

 EndProject

 Global

 	GlobalSection(SolutionConfigurationPlatforms) = preSolution

@@ -123,182 +234,350 @@
 		{46CF2D25-6A36-4189-B59C-E4815388E554}.Release|Win32.Build.0 = Release|Win32

 		{46CF2D25-6A36-4189-B59C-E4815388E554}.Release|x64.ActiveCfg = Release|x64

 		{46CF2D25-6A36-4189-B59C-E4815388E554}.Release|x64.Build.0 = Release|x64

-		{4B44D0A4-DE85-4C15-A1FF-A334C0A1EFF2}.Debug|Win32.ActiveCfg = Debug|Win32

-		{4B44D0A4-DE85-4C15-A1FF-A334C0A1EFF2}.Debug|Win32.Build.0 = Debug|Win32

-		{4B44D0A4-DE85-4C15-A1FF-A334C0A1EFF2}.Debug|x64.ActiveCfg = Debug|x64

-		{4B44D0A4-DE85-4C15-A1FF-A334C0A1EFF2}.Debug|x64.Build.0 = Debug|x64

-		{4B44D0A4-DE85-4C15-A1FF-A334C0A1EFF2}.Release|Win32.ActiveCfg = Release|Win32

-		{4B44D0A4-DE85-4C15-A1FF-A334C0A1EFF2}.Release|Win32.Build.0 = Release|Win32

-		{4B44D0A4-DE85-4C15-A1FF-A334C0A1EFF2}.Release|x64.ActiveCfg = Release|x64

-		{4B44D0A4-DE85-4C15-A1FF-A334C0A1EFF2}.Release|x64.Build.0 = Release|x64

-		{F52B9FFC-0E87-4816-BB2D-711CFC1E8955}.Debug|Win32.ActiveCfg = Debug|Win32

-		{F52B9FFC-0E87-4816-BB2D-711CFC1E8955}.Debug|Win32.Build.0 = Debug|Win32

-		{F52B9FFC-0E87-4816-BB2D-711CFC1E8955}.Debug|x64.ActiveCfg = Debug|x64

-		{F52B9FFC-0E87-4816-BB2D-711CFC1E8955}.Debug|x64.Build.0 = Debug|x64

-		{F52B9FFC-0E87-4816-BB2D-711CFC1E8955}.Release|Win32.ActiveCfg = Release|Win32

-		{F52B9FFC-0E87-4816-BB2D-711CFC1E8955}.Release|Win32.Build.0 = Release|Win32

-		{F52B9FFC-0E87-4816-BB2D-711CFC1E8955}.Release|x64.ActiveCfg = Release|x64

-		{F52B9FFC-0E87-4816-BB2D-711CFC1E8955}.Release|x64.Build.0 = Release|x64

-		{6418ABBB-6D56-4D26-A7E8-69A47B61F7EB}.Debug|Win32.ActiveCfg = Debug|Win32

-		{6418ABBB-6D56-4D26-A7E8-69A47B61F7EB}.Debug|Win32.Build.0 = Debug|Win32

-		{6418ABBB-6D56-4D26-A7E8-69A47B61F7EB}.Debug|x64.ActiveCfg = Debug|x64

-		{6418ABBB-6D56-4D26-A7E8-69A47B61F7EB}.Debug|x64.Build.0 = Debug|x64

-		{6418ABBB-6D56-4D26-A7E8-69A47B61F7EB}.Release|Win32.ActiveCfg = Release|Win32

-		{6418ABBB-6D56-4D26-A7E8-69A47B61F7EB}.Release|Win32.Build.0 = Release|Win32

-		{6418ABBB-6D56-4D26-A7E8-69A47B61F7EB}.Release|x64.ActiveCfg = Release|x64

-		{6418ABBB-6D56-4D26-A7E8-69A47B61F7EB}.Release|x64.Build.0 = Release|x64

-		{E0DC7623-13A7-48DF-A42F-8585FA533894}.Debug|Win32.ActiveCfg = Debug|Win32

-		{E0DC7623-13A7-48DF-A42F-8585FA533894}.Debug|Win32.Build.0 = Debug|Win32

-		{E0DC7623-13A7-48DF-A42F-8585FA533894}.Debug|x64.ActiveCfg = Debug|x64

-		{E0DC7623-13A7-48DF-A42F-8585FA533894}.Debug|x64.Build.0 = Debug|x64

-		{E0DC7623-13A7-48DF-A42F-8585FA533894}.Release|Win32.ActiveCfg = Release|Win32

-		{E0DC7623-13A7-48DF-A42F-8585FA533894}.Release|Win32.Build.0 = Release|Win32

-		{E0DC7623-13A7-48DF-A42F-8585FA533894}.Release|x64.ActiveCfg = Release|x64

-		{E0DC7623-13A7-48DF-A42F-8585FA533894}.Release|x64.Build.0 = Release|x64

-		{EDF3B291-9D85-49EC-8CF4-27EA9096BCCB}.Debug|Win32.ActiveCfg = Debug|Win32

-		{EDF3B291-9D85-49EC-8CF4-27EA9096BCCB}.Debug|Win32.Build.0 = Debug|Win32

-		{EDF3B291-9D85-49EC-8CF4-27EA9096BCCB}.Debug|x64.ActiveCfg = Debug|x64

-		{EDF3B291-9D85-49EC-8CF4-27EA9096BCCB}.Debug|x64.Build.0 = Debug|x64

-		{EDF3B291-9D85-49EC-8CF4-27EA9096BCCB}.Release|Win32.ActiveCfg = Release|Win32

-		{EDF3B291-9D85-49EC-8CF4-27EA9096BCCB}.Release|Win32.Build.0 = Release|Win32

-		{EDF3B291-9D85-49EC-8CF4-27EA9096BCCB}.Release|x64.ActiveCfg = Release|x64

-		{EDF3B291-9D85-49EC-8CF4-27EA9096BCCB}.Release|x64.Build.0 = Release|x64

-		{54880004-9AA2-434D-A2F0-7F59D6F1536A}.Debug|Win32.ActiveCfg = Debug|Win32

-		{54880004-9AA2-434D-A2F0-7F59D6F1536A}.Debug|Win32.Build.0 = Debug|Win32

-		{54880004-9AA2-434D-A2F0-7F59D6F1536A}.Debug|x64.ActiveCfg = Debug|x64

-		{54880004-9AA2-434D-A2F0-7F59D6F1536A}.Debug|x64.Build.0 = Debug|x64

-		{54880004-9AA2-434D-A2F0-7F59D6F1536A}.Release|Win32.ActiveCfg = Release|Win32

-		{54880004-9AA2-434D-A2F0-7F59D6F1536A}.Release|Win32.Build.0 = Release|Win32

-		{54880004-9AA2-434D-A2F0-7F59D6F1536A}.Release|x64.ActiveCfg = Release|x64

-		{54880004-9AA2-434D-A2F0-7F59D6F1536A}.Release|x64.Build.0 = Release|x64

-		{B9CD06FA-D063-4AFE-BF05-1348142274D7}.Debug|Win32.ActiveCfg = Debug|Win32

-		{B9CD06FA-D063-4AFE-BF05-1348142274D7}.Debug|Win32.Build.0 = Debug|Win32

-		{B9CD06FA-D063-4AFE-BF05-1348142274D7}.Debug|x64.ActiveCfg = Debug|x64

-		{B9CD06FA-D063-4AFE-BF05-1348142274D7}.Debug|x64.Build.0 = Debug|x64

-		{B9CD06FA-D063-4AFE-BF05-1348142274D7}.Release|Win32.ActiveCfg = Release|Win32

-		{B9CD06FA-D063-4AFE-BF05-1348142274D7}.Release|Win32.Build.0 = Release|Win32

-		{B9CD06FA-D063-4AFE-BF05-1348142274D7}.Release|x64.ActiveCfg = Release|x64

-		{B9CD06FA-D063-4AFE-BF05-1348142274D7}.Release|x64.Build.0 = Release|x64

-		{E3F6459F-183D-4604-8A42-3F1C84A7C119}.Debug|Win32.ActiveCfg = Debug|Win32

-		{E3F6459F-183D-4604-8A42-3F1C84A7C119}.Debug|Win32.Build.0 = Debug|Win32

-		{E3F6459F-183D-4604-8A42-3F1C84A7C119}.Debug|x64.ActiveCfg = Debug|x64

-		{E3F6459F-183D-4604-8A42-3F1C84A7C119}.Debug|x64.Build.0 = Debug|x64

-		{E3F6459F-183D-4604-8A42-3F1C84A7C119}.Release|Win32.ActiveCfg = Release|Win32

-		{E3F6459F-183D-4604-8A42-3F1C84A7C119}.Release|Win32.Build.0 = Release|Win32

-		{E3F6459F-183D-4604-8A42-3F1C84A7C119}.Release|x64.ActiveCfg = Release|x64

-		{E3F6459F-183D-4604-8A42-3F1C84A7C119}.Release|x64.Build.0 = Release|x64

-		{83BCC55C-5216-41BD-865B-E38FAB399454}.Debug|Win32.ActiveCfg = Debug|Win32

-		{83BCC55C-5216-41BD-865B-E38FAB399454}.Debug|Win32.Build.0 = Debug|Win32

-		{83BCC55C-5216-41BD-865B-E38FAB399454}.Debug|x64.ActiveCfg = Debug|x64

-		{83BCC55C-5216-41BD-865B-E38FAB399454}.Debug|x64.Build.0 = Debug|x64

-		{83BCC55C-5216-41BD-865B-E38FAB399454}.Release|Win32.ActiveCfg = Release|Win32

-		{83BCC55C-5216-41BD-865B-E38FAB399454}.Release|Win32.Build.0 = Release|Win32

-		{83BCC55C-5216-41BD-865B-E38FAB399454}.Release|x64.ActiveCfg = Release|x64

-		{83BCC55C-5216-41BD-865B-E38FAB399454}.Release|x64.Build.0 = Release|x64

-		{17D1A1DA-6803-4AA1-A0DB-566E00D7593C}.Debug|Win32.ActiveCfg = Debug|Win32

-		{17D1A1DA-6803-4AA1-A0DB-566E00D7593C}.Debug|Win32.Build.0 = Debug|Win32

-		{17D1A1DA-6803-4AA1-A0DB-566E00D7593C}.Debug|x64.ActiveCfg = Debug|x64

-		{17D1A1DA-6803-4AA1-A0DB-566E00D7593C}.Debug|x64.Build.0 = Debug|x64

-		{17D1A1DA-6803-4AA1-A0DB-566E00D7593C}.Release|Win32.ActiveCfg = Release|Win32

-		{17D1A1DA-6803-4AA1-A0DB-566E00D7593C}.Release|Win32.Build.0 = Release|Win32

-		{17D1A1DA-6803-4AA1-A0DB-566E00D7593C}.Release|x64.ActiveCfg = Release|x64

-		{17D1A1DA-6803-4AA1-A0DB-566E00D7593C}.Release|x64.Build.0 = Release|x64

-		{BE21679A-D26E-4A26-BC4F-382F57A33480}.Debug|Win32.ActiveCfg = Debug|Win32

-		{BE21679A-D26E-4A26-BC4F-382F57A33480}.Debug|Win32.Build.0 = Debug|Win32

-		{BE21679A-D26E-4A26-BC4F-382F57A33480}.Debug|x64.ActiveCfg = Debug|x64

-		{BE21679A-D26E-4A26-BC4F-382F57A33480}.Debug|x64.Build.0 = Debug|x64

-		{BE21679A-D26E-4A26-BC4F-382F57A33480}.Release|Win32.ActiveCfg = Release|Win32

-		{BE21679A-D26E-4A26-BC4F-382F57A33480}.Release|Win32.Build.0 = Release|Win32

-		{BE21679A-D26E-4A26-BC4F-382F57A33480}.Release|x64.ActiveCfg = Release|x64

-		{BE21679A-D26E-4A26-BC4F-382F57A33480}.Release|x64.Build.0 = Release|x64

-		{7FEC406E-95C5-4CC7-9CE7-8EA014AF5E15}.Debug|Win32.ActiveCfg = Debug|Win32

-		{7FEC406E-95C5-4CC7-9CE7-8EA014AF5E15}.Debug|Win32.Build.0 = Debug|Win32

-		{7FEC406E-95C5-4CC7-9CE7-8EA014AF5E15}.Debug|x64.ActiveCfg = Debug|x64

-		{7FEC406E-95C5-4CC7-9CE7-8EA014AF5E15}.Debug|x64.Build.0 = Debug|x64

-		{7FEC406E-95C5-4CC7-9CE7-8EA014AF5E15}.Release|Win32.ActiveCfg = Release|Win32

-		{7FEC406E-95C5-4CC7-9CE7-8EA014AF5E15}.Release|Win32.Build.0 = Release|Win32

-		{7FEC406E-95C5-4CC7-9CE7-8EA014AF5E15}.Release|x64.ActiveCfg = Release|x64

-		{7FEC406E-95C5-4CC7-9CE7-8EA014AF5E15}.Release|x64.Build.0 = Release|x64

-		{E6999C98-6F20-4ED8-A791-69930800728F}.Debug|Win32.ActiveCfg = Debug|Win32

-		{E6999C98-6F20-4ED8-A791-69930800728F}.Debug|Win32.Build.0 = Debug|Win32

-		{E6999C98-6F20-4ED8-A791-69930800728F}.Debug|x64.ActiveCfg = Debug|x64

-		{E6999C98-6F20-4ED8-A791-69930800728F}.Debug|x64.Build.0 = Debug|x64

-		{E6999C98-6F20-4ED8-A791-69930800728F}.Release|Win32.ActiveCfg = Release|Win32

-		{E6999C98-6F20-4ED8-A791-69930800728F}.Release|Win32.Build.0 = Release|Win32

-		{E6999C98-6F20-4ED8-A791-69930800728F}.Release|x64.ActiveCfg = Release|x64

-		{E6999C98-6F20-4ED8-A791-69930800728F}.Release|x64.Build.0 = Release|x64

-		{914C3FB6-43A6-4FB6-875C-870DF0553035}.Debug|Win32.ActiveCfg = Debug|Win32

-		{914C3FB6-43A6-4FB6-875C-870DF0553035}.Debug|Win32.Build.0 = Debug|Win32

-		{914C3FB6-43A6-4FB6-875C-870DF0553035}.Debug|x64.ActiveCfg = Debug|x64

-		{914C3FB6-43A6-4FB6-875C-870DF0553035}.Debug|x64.Build.0 = Debug|x64

-		{914C3FB6-43A6-4FB6-875C-870DF0553035}.Release|Win32.ActiveCfg = Release|Win32

-		{914C3FB6-43A6-4FB6-875C-870DF0553035}.Release|Win32.Build.0 = Release|Win32

-		{914C3FB6-43A6-4FB6-875C-870DF0553035}.Release|x64.ActiveCfg = Release|x64

-		{914C3FB6-43A6-4FB6-875C-870DF0553035}.Release|x64.Build.0 = Release|x64

-		{27FA2978-988C-4918-AF10-FC9613B66CDB}.Debug|Win32.ActiveCfg = Debug|Win32

-		{27FA2978-988C-4918-AF10-FC9613B66CDB}.Debug|Win32.Build.0 = Debug|Win32

-		{27FA2978-988C-4918-AF10-FC9613B66CDB}.Debug|x64.ActiveCfg = Debug|x64

-		{27FA2978-988C-4918-AF10-FC9613B66CDB}.Debug|x64.Build.0 = Debug|x64

-		{27FA2978-988C-4918-AF10-FC9613B66CDB}.Release|Win32.ActiveCfg = Release|Win32

-		{27FA2978-988C-4918-AF10-FC9613B66CDB}.Release|Win32.Build.0 = Release|Win32

-		{27FA2978-988C-4918-AF10-FC9613B66CDB}.Release|x64.ActiveCfg = Release|x64

-		{27FA2978-988C-4918-AF10-FC9613B66CDB}.Release|x64.Build.0 = Release|x64

-		{FAAA2021-DF20-436F-AE12-9AD91C34C0B4}.Debug|Win32.ActiveCfg = Debug|Win32

-		{FAAA2021-DF20-436F-AE12-9AD91C34C0B4}.Debug|Win32.Build.0 = Debug|Win32

-		{FAAA2021-DF20-436F-AE12-9AD91C34C0B4}.Debug|x64.ActiveCfg = Debug|x64

-		{FAAA2021-DF20-436F-AE12-9AD91C34C0B4}.Debug|x64.Build.0 = Debug|x64

-		{FAAA2021-DF20-436F-AE12-9AD91C34C0B4}.Release|Win32.ActiveCfg = Release|Win32

-		{FAAA2021-DF20-436F-AE12-9AD91C34C0B4}.Release|Win32.Build.0 = Release|Win32

-		{FAAA2021-DF20-436F-AE12-9AD91C34C0B4}.Release|x64.ActiveCfg = Release|x64

-		{FAAA2021-DF20-436F-AE12-9AD91C34C0B4}.Release|x64.Build.0 = Release|x64

-		{4485C157-39E7-4A97-93DC-80F794E37450}.Debug|Win32.ActiveCfg = Debug|Win32

-		{4485C157-39E7-4A97-93DC-80F794E37450}.Debug|Win32.Build.0 = Debug|Win32

-		{4485C157-39E7-4A97-93DC-80F794E37450}.Debug|x64.ActiveCfg = Debug|x64

-		{4485C157-39E7-4A97-93DC-80F794E37450}.Debug|x64.Build.0 = Debug|x64

-		{4485C157-39E7-4A97-93DC-80F794E37450}.Release|Win32.ActiveCfg = Release|Win32

-		{4485C157-39E7-4A97-93DC-80F794E37450}.Release|Win32.Build.0 = Release|Win32

-		{4485C157-39E7-4A97-93DC-80F794E37450}.Release|x64.ActiveCfg = Release|x64

-		{4485C157-39E7-4A97-93DC-80F794E37450}.Release|x64.Build.0 = Release|x64

-		{22142D77-6986-4C71-8386-0184A8E7A1E6}.Debug|Win32.ActiveCfg = Debug|Win32

-		{22142D77-6986-4C71-8386-0184A8E7A1E6}.Debug|Win32.Build.0 = Debug|Win32

-		{22142D77-6986-4C71-8386-0184A8E7A1E6}.Debug|x64.ActiveCfg = Debug|x64

-		{22142D77-6986-4C71-8386-0184A8E7A1E6}.Debug|x64.Build.0 = Debug|x64

-		{22142D77-6986-4C71-8386-0184A8E7A1E6}.Release|Win32.ActiveCfg = Release|Win32

-		{22142D77-6986-4C71-8386-0184A8E7A1E6}.Release|Win32.Build.0 = Release|Win32

-		{22142D77-6986-4C71-8386-0184A8E7A1E6}.Release|x64.ActiveCfg = Release|x64

-		{22142D77-6986-4C71-8386-0184A8E7A1E6}.Release|x64.Build.0 = Release|x64

-		{15F21E24-7810-4B51-AF44-69F9062E35A0}.Debug|Win32.ActiveCfg = Debug|Win32

-		{15F21E24-7810-4B51-AF44-69F9062E35A0}.Debug|Win32.Build.0 = Debug|Win32

-		{15F21E24-7810-4B51-AF44-69F9062E35A0}.Debug|x64.ActiveCfg = Debug|x64

-		{15F21E24-7810-4B51-AF44-69F9062E35A0}.Debug|x64.Build.0 = Debug|x64

-		{15F21E24-7810-4B51-AF44-69F9062E35A0}.Release|Win32.ActiveCfg = Release|Win32

-		{15F21E24-7810-4B51-AF44-69F9062E35A0}.Release|Win32.Build.0 = Release|Win32

-		{15F21E24-7810-4B51-AF44-69F9062E35A0}.Release|x64.ActiveCfg = Release|x64

-		{15F21E24-7810-4B51-AF44-69F9062E35A0}.Release|x64.Build.0 = Release|x64

-		{97A7EBB4-A76D-40CA-8E30-C10F2EB0B324}.Debug|Win32.ActiveCfg = Debug|Win32

-		{97A7EBB4-A76D-40CA-8E30-C10F2EB0B324}.Debug|Win32.Build.0 = Debug|Win32

-		{97A7EBB4-A76D-40CA-8E30-C10F2EB0B324}.Debug|x64.ActiveCfg = Debug|x64

-		{97A7EBB4-A76D-40CA-8E30-C10F2EB0B324}.Debug|x64.Build.0 = Debug|x64

-		{97A7EBB4-A76D-40CA-8E30-C10F2EB0B324}.Release|Win32.ActiveCfg = Release|Win32

-		{97A7EBB4-A76D-40CA-8E30-C10F2EB0B324}.Release|Win32.Build.0 = Release|Win32

-		{97A7EBB4-A76D-40CA-8E30-C10F2EB0B324}.Release|x64.ActiveCfg = Release|x64

-		{97A7EBB4-A76D-40CA-8E30-C10F2EB0B324}.Release|x64.Build.0 = Release|x64

-		{CFA36CC7-515C-4E18-8F8F-5B56AB903352}.Debug|Win32.ActiveCfg = Debug|Win32

-		{CFA36CC7-515C-4E18-8F8F-5B56AB903352}.Debug|Win32.Build.0 = Debug|Win32

-		{CFA36CC7-515C-4E18-8F8F-5B56AB903352}.Debug|x64.ActiveCfg = Debug|x64

-		{CFA36CC7-515C-4E18-8F8F-5B56AB903352}.Debug|x64.Build.0 = Debug|x64

-		{CFA36CC7-515C-4E18-8F8F-5B56AB903352}.Release|Win32.ActiveCfg = Release|Win32

-		{CFA36CC7-515C-4E18-8F8F-5B56AB903352}.Release|Win32.Build.0 = Release|Win32

-		{CFA36CC7-515C-4E18-8F8F-5B56AB903352}.Release|x64.ActiveCfg = Release|x64

-		{CFA36CC7-515C-4E18-8F8F-5B56AB903352}.Release|x64.Build.0 = Release|x64

-		{316E338C-6DC1-4D11-81C1-91F20E92AB04}.Debug|Win32.ActiveCfg = Debug|Win32

-		{316E338C-6DC1-4D11-81C1-91F20E92AB04}.Debug|Win32.Build.0 = Debug|Win32

-		{316E338C-6DC1-4D11-81C1-91F20E92AB04}.Debug|x64.ActiveCfg = Debug|x64

-		{316E338C-6DC1-4D11-81C1-91F20E92AB04}.Debug|x64.Build.0 = Debug|x64

-		{316E338C-6DC1-4D11-81C1-91F20E92AB04}.Release|Win32.ActiveCfg = Release|Win32

-		{316E338C-6DC1-4D11-81C1-91F20E92AB04}.Release|Win32.Build.0 = Release|Win32

-		{316E338C-6DC1-4D11-81C1-91F20E92AB04}.Release|x64.ActiveCfg = Release|x64

-		{316E338C-6DC1-4D11-81C1-91F20E92AB04}.Release|x64.Build.0 = Release|x64

+		{46298485-CE22-B800-3D95-6D6C821819A1}.Debug|Win32.ActiveCfg = Debug|Win32

+		{46298485-CE22-B800-3D95-6D6C821819A1}.Debug|Win32.Build.0 = Debug|Win32

+		{46298485-CE22-B800-3D95-6D6C821819A1}.Debug|x64.ActiveCfg = Debug|x64

+		{46298485-CE22-B800-3D95-6D6C821819A1}.Debug|x64.Build.0 = Debug|x64

+		{46298485-CE22-B800-3D95-6D6C821819A1}.Release|Win32.ActiveCfg = Release|Win32

+		{46298485-CE22-B800-3D95-6D6C821819A1}.Release|Win32.Build.0 = Release|Win32

+		{46298485-CE22-B800-3D95-6D6C821819A1}.Release|x64.ActiveCfg = Release|x64

+		{46298485-CE22-B800-3D95-6D6C821819A1}.Release|x64.Build.0 = Release|x64

+		{84F76F01-FA6C-7C48-1979-06FD24B476C1}.Debug|Win32.ActiveCfg = Debug|Win32

+		{84F76F01-FA6C-7C48-1979-06FD24B476C1}.Debug|Win32.Build.0 = Debug|Win32

+		{84F76F01-FA6C-7C48-1979-06FD24B476C1}.Debug|x64.ActiveCfg = Debug|x64

+		{84F76F01-FA6C-7C48-1979-06FD24B476C1}.Debug|x64.Build.0 = Debug|x64

+		{84F76F01-FA6C-7C48-1979-06FD24B476C1}.Release|Win32.ActiveCfg = Release|Win32

+		{84F76F01-FA6C-7C48-1979-06FD24B476C1}.Release|Win32.Build.0 = Release|Win32

+		{84F76F01-FA6C-7C48-1979-06FD24B476C1}.Release|x64.ActiveCfg = Release|x64

+		{84F76F01-FA6C-7C48-1979-06FD24B476C1}.Release|x64.Build.0 = Release|x64

+		{7076F38E-EDC4-1A0C-8D9B-CFB0A3E9724F}.Debug|Win32.ActiveCfg = Debug|Win32

+		{7076F38E-EDC4-1A0C-8D9B-CFB0A3E9724F}.Debug|Win32.Build.0 = Debug|Win32

+		{7076F38E-EDC4-1A0C-8D9B-CFB0A3E9724F}.Debug|x64.ActiveCfg = Debug|x64

+		{7076F38E-EDC4-1A0C-8D9B-CFB0A3E9724F}.Debug|x64.Build.0 = Debug|x64

+		{7076F38E-EDC4-1A0C-8D9B-CFB0A3E9724F}.Release|Win32.ActiveCfg = Release|Win32

+		{7076F38E-EDC4-1A0C-8D9B-CFB0A3E9724F}.Release|Win32.Build.0 = Release|Win32

+		{7076F38E-EDC4-1A0C-8D9B-CFB0A3E9724F}.Release|x64.ActiveCfg = Release|x64

+		{7076F38E-EDC4-1A0C-8D9B-CFB0A3E9724F}.Release|x64.Build.0 = Release|x64

+		{7036A174-35D6-54AE-7613-A50F5FD8AF86}.Debug|Win32.ActiveCfg = Debug|Win32

+		{7036A174-35D6-54AE-7613-A50F5FD8AF86}.Debug|Win32.Build.0 = Debug|Win32

+		{7036A174-35D6-54AE-7613-A50F5FD8AF86}.Debug|x64.ActiveCfg = Debug|x64

+		{7036A174-35D6-54AE-7613-A50F5FD8AF86}.Debug|x64.Build.0 = Debug|x64

+		{7036A174-35D6-54AE-7613-A50F5FD8AF86}.Release|Win32.ActiveCfg = Release|Win32

+		{7036A174-35D6-54AE-7613-A50F5FD8AF86}.Release|Win32.Build.0 = Release|Win32

+		{7036A174-35D6-54AE-7613-A50F5FD8AF86}.Release|x64.ActiveCfg = Release|x64

+		{7036A174-35D6-54AE-7613-A50F5FD8AF86}.Release|x64.Build.0 = Release|x64

+		{D4F79297-4960-6D63-D50E-5823C50ED124}.Debug|Win32.ActiveCfg = Debug|Win32

+		{D4F79297-4960-6D63-D50E-5823C50ED124}.Debug|Win32.Build.0 = Debug|Win32

+		{D4F79297-4960-6D63-D50E-5823C50ED124}.Debug|x64.ActiveCfg = Debug|x64

+		{D4F79297-4960-6D63-D50E-5823C50ED124}.Debug|x64.Build.0 = Debug|x64

+		{D4F79297-4960-6D63-D50E-5823C50ED124}.Release|Win32.ActiveCfg = Release|Win32

+		{D4F79297-4960-6D63-D50E-5823C50ED124}.Release|Win32.Build.0 = Release|Win32

+		{D4F79297-4960-6D63-D50E-5823C50ED124}.Release|x64.ActiveCfg = Release|x64

+		{D4F79297-4960-6D63-D50E-5823C50ED124}.Release|x64.Build.0 = Release|x64

+		{A0278E64-D98F-842D-438A-6747411CE76F}.Debug|Win32.ActiveCfg = Debug|Win32

+		{A0278E64-D98F-842D-438A-6747411CE76F}.Debug|Win32.Build.0 = Debug|Win32

+		{A0278E64-D98F-842D-438A-6747411CE76F}.Debug|x64.ActiveCfg = Debug|x64

+		{A0278E64-D98F-842D-438A-6747411CE76F}.Debug|x64.Build.0 = Debug|x64

+		{A0278E64-D98F-842D-438A-6747411CE76F}.Release|Win32.ActiveCfg = Release|Win32

+		{A0278E64-D98F-842D-438A-6747411CE76F}.Release|Win32.Build.0 = Release|Win32

+		{A0278E64-D98F-842D-438A-6747411CE76F}.Release|x64.ActiveCfg = Release|x64

+		{A0278E64-D98F-842D-438A-6747411CE76F}.Release|x64.Build.0 = Release|x64

+		{BAF92F6C-E5BE-95B7-6E36-823A1779A818}.Debug|Win32.ActiveCfg = Debug|Win32

+		{BAF92F6C-E5BE-95B7-6E36-823A1779A818}.Debug|Win32.Build.0 = Debug|Win32

+		{BAF92F6C-E5BE-95B7-6E36-823A1779A818}.Debug|x64.ActiveCfg = Debug|x64

+		{BAF92F6C-E5BE-95B7-6E36-823A1779A818}.Debug|x64.Build.0 = Debug|x64

+		{BAF92F6C-E5BE-95B7-6E36-823A1779A818}.Release|Win32.ActiveCfg = Release|Win32

+		{BAF92F6C-E5BE-95B7-6E36-823A1779A818}.Release|Win32.Build.0 = Release|Win32

+		{BAF92F6C-E5BE-95B7-6E36-823A1779A818}.Release|x64.ActiveCfg = Release|x64

+		{BAF92F6C-E5BE-95B7-6E36-823A1779A818}.Release|x64.Build.0 = Release|x64

+		{92253FCF-72E1-7AF6-EAD1-E9037A194C9F}.Debug|Win32.ActiveCfg = Debug|Win32

+		{92253FCF-72E1-7AF6-EAD1-E9037A194C9F}.Debug|Win32.Build.0 = Debug|Win32

+		{92253FCF-72E1-7AF6-EAD1-E9037A194C9F}.Debug|x64.ActiveCfg = Debug|x64

+		{92253FCF-72E1-7AF6-EAD1-E9037A194C9F}.Debug|x64.Build.0 = Debug|x64

+		{92253FCF-72E1-7AF6-EAD1-E9037A194C9F}.Release|Win32.ActiveCfg = Release|Win32

+		{92253FCF-72E1-7AF6-EAD1-E9037A194C9F}.Release|Win32.Build.0 = Release|Win32

+		{92253FCF-72E1-7AF6-EAD1-E9037A194C9F}.Release|x64.ActiveCfg = Release|x64

+		{92253FCF-72E1-7AF6-EAD1-E9037A194C9F}.Release|x64.Build.0 = Release|x64

+		{8972AF2C-6333-2827-F75D-3BAC5E07915A}.Debug|Win32.ActiveCfg = Debug|Win32

+		{8972AF2C-6333-2827-F75D-3BAC5E07915A}.Debug|Win32.Build.0 = Debug|Win32

+		{8972AF2C-6333-2827-F75D-3BAC5E07915A}.Debug|x64.ActiveCfg = Debug|x64

+		{8972AF2C-6333-2827-F75D-3BAC5E07915A}.Debug|x64.Build.0 = Debug|x64

+		{8972AF2C-6333-2827-F75D-3BAC5E07915A}.Release|Win32.ActiveCfg = Release|Win32

+		{8972AF2C-6333-2827-F75D-3BAC5E07915A}.Release|Win32.Build.0 = Release|Win32

+		{8972AF2C-6333-2827-F75D-3BAC5E07915A}.Release|x64.ActiveCfg = Release|x64

+		{8972AF2C-6333-2827-F75D-3BAC5E07915A}.Release|x64.Build.0 = Release|x64

+		{9BB33B8B-A1D3-ABEF-9071-D92289A4CEED}.Debug|Win32.ActiveCfg = Debug|Win32

+		{9BB33B8B-A1D3-ABEF-9071-D92289A4CEED}.Debug|Win32.Build.0 = Debug|Win32

+		{9BB33B8B-A1D3-ABEF-9071-D92289A4CEED}.Debug|x64.ActiveCfg = Debug|x64

+		{9BB33B8B-A1D3-ABEF-9071-D92289A4CEED}.Debug|x64.Build.0 = Debug|x64

+		{9BB33B8B-A1D3-ABEF-9071-D92289A4CEED}.Release|Win32.ActiveCfg = Release|Win32

+		{9BB33B8B-A1D3-ABEF-9071-D92289A4CEED}.Release|Win32.Build.0 = Release|Win32

+		{9BB33B8B-A1D3-ABEF-9071-D92289A4CEED}.Release|x64.ActiveCfg = Release|x64

+		{9BB33B8B-A1D3-ABEF-9071-D92289A4CEED}.Release|x64.Build.0 = Release|x64

+		{7721EBA2-C892-AD9B-4994-A0E988BA4BF8}.Debug|Win32.ActiveCfg = Debug|Win32

+		{7721EBA2-C892-AD9B-4994-A0E988BA4BF8}.Debug|Win32.Build.0 = Debug|Win32

+		{7721EBA2-C892-AD9B-4994-A0E988BA4BF8}.Debug|x64.ActiveCfg = Debug|x64

+		{7721EBA2-C892-AD9B-4994-A0E988BA4BF8}.Debug|x64.Build.0 = Debug|x64

+		{7721EBA2-C892-AD9B-4994-A0E988BA4BF8}.Release|Win32.ActiveCfg = Release|Win32

+		{7721EBA2-C892-AD9B-4994-A0E988BA4BF8}.Release|Win32.Build.0 = Release|Win32

+		{7721EBA2-C892-AD9B-4994-A0E988BA4BF8}.Release|x64.ActiveCfg = Release|x64

+		{7721EBA2-C892-AD9B-4994-A0E988BA4BF8}.Release|x64.Build.0 = Release|x64

+		{5129B724-3FB6-CE34-FF51-57031A33C50B}.Debug|Win32.ActiveCfg = Debug|Win32

+		{5129B724-3FB6-CE34-FF51-57031A33C50B}.Debug|Win32.Build.0 = Debug|Win32

+		{5129B724-3FB6-CE34-FF51-57031A33C50B}.Debug|x64.ActiveCfg = Debug|x64

+		{5129B724-3FB6-CE34-FF51-57031A33C50B}.Debug|x64.Build.0 = Debug|x64

+		{5129B724-3FB6-CE34-FF51-57031A33C50B}.Release|Win32.ActiveCfg = Release|Win32

+		{5129B724-3FB6-CE34-FF51-57031A33C50B}.Release|Win32.Build.0 = Release|Win32

+		{5129B724-3FB6-CE34-FF51-57031A33C50B}.Release|x64.ActiveCfg = Release|x64

+		{5129B724-3FB6-CE34-FF51-57031A33C50B}.Release|x64.Build.0 = Release|x64

+		{090B665D-0F4C-4D77-D1B1-A6D882842AA3}.Debug|Win32.ActiveCfg = Debug|Win32

+		{090B665D-0F4C-4D77-D1B1-A6D882842AA3}.Debug|Win32.Build.0 = Debug|Win32

+		{090B665D-0F4C-4D77-D1B1-A6D882842AA3}.Debug|x64.ActiveCfg = Debug|x64

+		{090B665D-0F4C-4D77-D1B1-A6D882842AA3}.Debug|x64.Build.0 = Debug|x64

+		{090B665D-0F4C-4D77-D1B1-A6D882842AA3}.Release|Win32.ActiveCfg = Release|Win32

+		{090B665D-0F4C-4D77-D1B1-A6D882842AA3}.Release|Win32.Build.0 = Release|Win32

+		{090B665D-0F4C-4D77-D1B1-A6D882842AA3}.Release|x64.ActiveCfg = Release|x64

+		{090B665D-0F4C-4D77-D1B1-A6D882842AA3}.Release|x64.Build.0 = Release|x64

+		{08A79AF8-5B8A-4343-D01A-B8AB47F3366C}.Debug|Win32.ActiveCfg = Debug|Win32

+		{08A79AF8-5B8A-4343-D01A-B8AB47F3366C}.Debug|Win32.Build.0 = Debug|Win32

+		{08A79AF8-5B8A-4343-D01A-B8AB47F3366C}.Debug|x64.ActiveCfg = Debug|x64

+		{08A79AF8-5B8A-4343-D01A-B8AB47F3366C}.Debug|x64.Build.0 = Debug|x64

+		{08A79AF8-5B8A-4343-D01A-B8AB47F3366C}.Release|Win32.ActiveCfg = Release|Win32

+		{08A79AF8-5B8A-4343-D01A-B8AB47F3366C}.Release|Win32.Build.0 = Release|Win32

+		{08A79AF8-5B8A-4343-D01A-B8AB47F3366C}.Release|x64.ActiveCfg = Release|x64

+		{08A79AF8-5B8A-4343-D01A-B8AB47F3366C}.Release|x64.Build.0 = Release|x64

+		{C69CD150-7174-FA91-9E6E-B7DDD56FDE8E}.Debug|Win32.ActiveCfg = Debug|Win32

+		{C69CD150-7174-FA91-9E6E-B7DDD56FDE8E}.Debug|Win32.Build.0 = Debug|Win32

+		{C69CD150-7174-FA91-9E6E-B7DDD56FDE8E}.Debug|x64.ActiveCfg = Debug|x64

+		{C69CD150-7174-FA91-9E6E-B7DDD56FDE8E}.Debug|x64.Build.0 = Debug|x64

+		{C69CD150-7174-FA91-9E6E-B7DDD56FDE8E}.Release|Win32.ActiveCfg = Release|Win32

+		{C69CD150-7174-FA91-9E6E-B7DDD56FDE8E}.Release|Win32.Build.0 = Release|Win32

+		{C69CD150-7174-FA91-9E6E-B7DDD56FDE8E}.Release|x64.ActiveCfg = Release|x64

+		{C69CD150-7174-FA91-9E6E-B7DDD56FDE8E}.Release|x64.Build.0 = Release|x64

+		{239051A9-0CE6-7730-7BB0-83599DC37AA4}.Debug|Win32.ActiveCfg = Debug|Win32

+		{239051A9-0CE6-7730-7BB0-83599DC37AA4}.Debug|Win32.Build.0 = Debug|Win32

+		{239051A9-0CE6-7730-7BB0-83599DC37AA4}.Debug|x64.ActiveCfg = Debug|x64

+		{239051A9-0CE6-7730-7BB0-83599DC37AA4}.Debug|x64.Build.0 = Debug|x64

+		{239051A9-0CE6-7730-7BB0-83599DC37AA4}.Release|Win32.ActiveCfg = Release|Win32

+		{239051A9-0CE6-7730-7BB0-83599DC37AA4}.Release|Win32.Build.0 = Release|Win32

+		{239051A9-0CE6-7730-7BB0-83599DC37AA4}.Release|x64.ActiveCfg = Release|x64

+		{239051A9-0CE6-7730-7BB0-83599DC37AA4}.Release|x64.Build.0 = Release|x64

+		{EBDBB632-13A2-45F8-A44E-4837F6467512}.Debug|Win32.ActiveCfg = Debug|Win32

+		{EBDBB632-13A2-45F8-A44E-4837F6467512}.Debug|Win32.Build.0 = Debug|Win32

+		{EBDBB632-13A2-45F8-A44E-4837F6467512}.Debug|x64.ActiveCfg = Debug|x64

+		{EBDBB632-13A2-45F8-A44E-4837F6467512}.Debug|x64.Build.0 = Debug|x64

+		{EBDBB632-13A2-45F8-A44E-4837F6467512}.Release|Win32.ActiveCfg = Release|Win32

+		{EBDBB632-13A2-45F8-A44E-4837F6467512}.Release|Win32.Build.0 = Release|Win32

+		{EBDBB632-13A2-45F8-A44E-4837F6467512}.Release|x64.ActiveCfg = Release|x64

+		{EBDBB632-13A2-45F8-A44E-4837F6467512}.Release|x64.Build.0 = Release|x64

+		{CA8D1EDA-2881-55E0-8F1C-B379B5AA7B56}.Debug|Win32.ActiveCfg = Debug|Win32

+		{CA8D1EDA-2881-55E0-8F1C-B379B5AA7B56}.Debug|Win32.Build.0 = Debug|Win32

+		{CA8D1EDA-2881-55E0-8F1C-B379B5AA7B56}.Debug|x64.ActiveCfg = Debug|x64

+		{CA8D1EDA-2881-55E0-8F1C-B379B5AA7B56}.Debug|x64.Build.0 = Debug|x64

+		{CA8D1EDA-2881-55E0-8F1C-B379B5AA7B56}.Release|Win32.ActiveCfg = Release|Win32

+		{CA8D1EDA-2881-55E0-8F1C-B379B5AA7B56}.Release|Win32.Build.0 = Release|Win32

+		{CA8D1EDA-2881-55E0-8F1C-B379B5AA7B56}.Release|x64.ActiveCfg = Release|x64

+		{CA8D1EDA-2881-55E0-8F1C-B379B5AA7B56}.Release|x64.Build.0 = Release|x64

+		{AD5B2F84-44A2-8D21-D47D-07E0ED7E0AAD}.Debug|Win32.ActiveCfg = Debug|Win32

+		{AD5B2F84-44A2-8D21-D47D-07E0ED7E0AAD}.Debug|Win32.Build.0 = Debug|Win32

+		{AD5B2F84-44A2-8D21-D47D-07E0ED7E0AAD}.Debug|x64.ActiveCfg = Debug|x64

+		{AD5B2F84-44A2-8D21-D47D-07E0ED7E0AAD}.Debug|x64.Build.0 = Debug|x64

+		{AD5B2F84-44A2-8D21-D47D-07E0ED7E0AAD}.Release|Win32.ActiveCfg = Release|Win32

+		{AD5B2F84-44A2-8D21-D47D-07E0ED7E0AAD}.Release|Win32.Build.0 = Release|Win32

+		{AD5B2F84-44A2-8D21-D47D-07E0ED7E0AAD}.Release|x64.ActiveCfg = Release|x64

+		{AD5B2F84-44A2-8D21-D47D-07E0ED7E0AAD}.Release|x64.Build.0 = Release|x64

+		{7E3D99BD-3D9E-762A-E235-9C8275E7010F}.Debug|Win32.ActiveCfg = Debug|Win32

+		{7E3D99BD-3D9E-762A-E235-9C8275E7010F}.Debug|Win32.Build.0 = Debug|Win32

+		{7E3D99BD-3D9E-762A-E235-9C8275E7010F}.Debug|x64.ActiveCfg = Debug|x64

+		{7E3D99BD-3D9E-762A-E235-9C8275E7010F}.Debug|x64.Build.0 = Debug|x64

+		{7E3D99BD-3D9E-762A-E235-9C8275E7010F}.Release|Win32.ActiveCfg = Release|Win32

+		{7E3D99BD-3D9E-762A-E235-9C8275E7010F}.Release|Win32.Build.0 = Release|Win32

+		{7E3D99BD-3D9E-762A-E235-9C8275E7010F}.Release|x64.ActiveCfg = Release|x64

+		{7E3D99BD-3D9E-762A-E235-9C8275E7010F}.Release|x64.Build.0 = Release|x64

+		{DA85604D-9ED1-FD08-4F37-FBD33E5E3642}.Debug|Win32.ActiveCfg = Debug|Win32

+		{DA85604D-9ED1-FD08-4F37-FBD33E5E3642}.Debug|Win32.Build.0 = Debug|Win32

+		{DA85604D-9ED1-FD08-4F37-FBD33E5E3642}.Debug|x64.ActiveCfg = Debug|x64

+		{DA85604D-9ED1-FD08-4F37-FBD33E5E3642}.Debug|x64.Build.0 = Debug|x64

+		{DA85604D-9ED1-FD08-4F37-FBD33E5E3642}.Release|Win32.ActiveCfg = Release|Win32

+		{DA85604D-9ED1-FD08-4F37-FBD33E5E3642}.Release|Win32.Build.0 = Release|Win32

+		{DA85604D-9ED1-FD08-4F37-FBD33E5E3642}.Release|x64.ActiveCfg = Release|x64

+		{DA85604D-9ED1-FD08-4F37-FBD33E5E3642}.Release|x64.Build.0 = Release|x64

+		{CFC883CE-9BAE-B26F-B08B-7F194AD35929}.Debug|Win32.ActiveCfg = Debug|Win32

+		{CFC883CE-9BAE-B26F-B08B-7F194AD35929}.Debug|Win32.Build.0 = Debug|Win32

+		{CFC883CE-9BAE-B26F-B08B-7F194AD35929}.Debug|x64.ActiveCfg = Debug|x64

+		{CFC883CE-9BAE-B26F-B08B-7F194AD35929}.Debug|x64.Build.0 = Debug|x64

+		{CFC883CE-9BAE-B26F-B08B-7F194AD35929}.Release|Win32.ActiveCfg = Release|Win32

+		{CFC883CE-9BAE-B26F-B08B-7F194AD35929}.Release|Win32.Build.0 = Release|Win32

+		{CFC883CE-9BAE-B26F-B08B-7F194AD35929}.Release|x64.ActiveCfg = Release|x64

+		{CFC883CE-9BAE-B26F-B08B-7F194AD35929}.Release|x64.Build.0 = Release|x64

+		{77834257-2878-A38D-AEBE-79423968B6DB}.Debug|Win32.ActiveCfg = Debug|Win32

+		{77834257-2878-A38D-AEBE-79423968B6DB}.Debug|Win32.Build.0 = Debug|Win32

+		{77834257-2878-A38D-AEBE-79423968B6DB}.Debug|x64.ActiveCfg = Debug|x64

+		{77834257-2878-A38D-AEBE-79423968B6DB}.Debug|x64.Build.0 = Debug|x64

+		{77834257-2878-A38D-AEBE-79423968B6DB}.Release|Win32.ActiveCfg = Release|Win32

+		{77834257-2878-A38D-AEBE-79423968B6DB}.Release|Win32.Build.0 = Release|Win32

+		{77834257-2878-A38D-AEBE-79423968B6DB}.Release|x64.ActiveCfg = Release|x64

+		{77834257-2878-A38D-AEBE-79423968B6DB}.Release|x64.Build.0 = Release|x64

+		{34A00BC1-32A6-5145-606F-F081D31CC1D1}.Debug|Win32.ActiveCfg = Debug|Win32

+		{34A00BC1-32A6-5145-606F-F081D31CC1D1}.Debug|Win32.Build.0 = Debug|Win32

+		{34A00BC1-32A6-5145-606F-F081D31CC1D1}.Debug|x64.ActiveCfg = Debug|x64

+		{34A00BC1-32A6-5145-606F-F081D31CC1D1}.Debug|x64.Build.0 = Debug|x64

+		{34A00BC1-32A6-5145-606F-F081D31CC1D1}.Release|Win32.ActiveCfg = Release|Win32

+		{34A00BC1-32A6-5145-606F-F081D31CC1D1}.Release|Win32.Build.0 = Release|Win32

+		{34A00BC1-32A6-5145-606F-F081D31CC1D1}.Release|x64.ActiveCfg = Release|x64

+		{34A00BC1-32A6-5145-606F-F081D31CC1D1}.Release|x64.Build.0 = Release|x64

+		{DAD91B2F-DEC8-E94F-8D9A-66B6E237AF07}.Debug|Win32.ActiveCfg = Debug|Win32

+		{DAD91B2F-DEC8-E94F-8D9A-66B6E237AF07}.Debug|Win32.Build.0 = Debug|Win32

+		{DAD91B2F-DEC8-E94F-8D9A-66B6E237AF07}.Debug|x64.ActiveCfg = Debug|x64

+		{DAD91B2F-DEC8-E94F-8D9A-66B6E237AF07}.Debug|x64.Build.0 = Debug|x64

+		{DAD91B2F-DEC8-E94F-8D9A-66B6E237AF07}.Release|Win32.ActiveCfg = Release|Win32

+		{DAD91B2F-DEC8-E94F-8D9A-66B6E237AF07}.Release|Win32.Build.0 = Release|Win32

+		{DAD91B2F-DEC8-E94F-8D9A-66B6E237AF07}.Release|x64.ActiveCfg = Release|x64

+		{DAD91B2F-DEC8-E94F-8D9A-66B6E237AF07}.Release|x64.Build.0 = Release|x64

+		{CE90D346-EBC0-D292-6D68-24717DB3F510}.Debug|Win32.ActiveCfg = Debug|Win32

+		{CE90D346-EBC0-D292-6D68-24717DB3F510}.Debug|Win32.Build.0 = Debug|Win32

+		{CE90D346-EBC0-D292-6D68-24717DB3F510}.Debug|x64.ActiveCfg = Debug|x64

+		{CE90D346-EBC0-D292-6D68-24717DB3F510}.Debug|x64.Build.0 = Debug|x64

+		{CE90D346-EBC0-D292-6D68-24717DB3F510}.Release|Win32.ActiveCfg = Release|Win32

+		{CE90D346-EBC0-D292-6D68-24717DB3F510}.Release|Win32.Build.0 = Release|Win32

+		{CE90D346-EBC0-D292-6D68-24717DB3F510}.Release|x64.ActiveCfg = Release|x64

+		{CE90D346-EBC0-D292-6D68-24717DB3F510}.Release|x64.Build.0 = Release|x64

+		{436AF1C2-99E7-32FA-5BFA-641F1FF2C57D}.Debug|Win32.ActiveCfg = Debug|Win32

+		{436AF1C2-99E7-32FA-5BFA-641F1FF2C57D}.Debug|Win32.Build.0 = Debug|Win32

+		{436AF1C2-99E7-32FA-5BFA-641F1FF2C57D}.Debug|x64.ActiveCfg = Debug|x64

+		{436AF1C2-99E7-32FA-5BFA-641F1FF2C57D}.Debug|x64.Build.0 = Debug|x64

+		{436AF1C2-99E7-32FA-5BFA-641F1FF2C57D}.Release|Win32.ActiveCfg = Release|Win32

+		{436AF1C2-99E7-32FA-5BFA-641F1FF2C57D}.Release|Win32.Build.0 = Release|Win32

+		{436AF1C2-99E7-32FA-5BFA-641F1FF2C57D}.Release|x64.ActiveCfg = Release|x64

+		{436AF1C2-99E7-32FA-5BFA-641F1FF2C57D}.Release|x64.Build.0 = Release|x64

+		{C49B1EF8-D169-70C5-2FA4-837A900267A7}.Debug|Win32.ActiveCfg = Debug|Win32

+		{C49B1EF8-D169-70C5-2FA4-837A900267A7}.Debug|Win32.Build.0 = Debug|Win32

+		{C49B1EF8-D169-70C5-2FA4-837A900267A7}.Debug|x64.ActiveCfg = Debug|x64

+		{C49B1EF8-D169-70C5-2FA4-837A900267A7}.Debug|x64.Build.0 = Debug|x64

+		{C49B1EF8-D169-70C5-2FA4-837A900267A7}.Release|Win32.ActiveCfg = Release|Win32

+		{C49B1EF8-D169-70C5-2FA4-837A900267A7}.Release|Win32.Build.0 = Release|Win32

+		{C49B1EF8-D169-70C5-2FA4-837A900267A7}.Release|x64.ActiveCfg = Release|x64

+		{C49B1EF8-D169-70C5-2FA4-837A900267A7}.Release|x64.Build.0 = Release|x64

+		{870B39B9-8F38-D9A4-8A07-87047C565061}.Debug|Win32.ActiveCfg = Debug|Win32

+		{870B39B9-8F38-D9A4-8A07-87047C565061}.Debug|Win32.Build.0 = Debug|Win32

+		{870B39B9-8F38-D9A4-8A07-87047C565061}.Debug|x64.ActiveCfg = Debug|x64

+		{870B39B9-8F38-D9A4-8A07-87047C565061}.Debug|x64.Build.0 = Debug|x64

+		{870B39B9-8F38-D9A4-8A07-87047C565061}.Release|Win32.ActiveCfg = Release|Win32

+		{870B39B9-8F38-D9A4-8A07-87047C565061}.Release|Win32.Build.0 = Release|Win32

+		{870B39B9-8F38-D9A4-8A07-87047C565061}.Release|x64.ActiveCfg = Release|x64

+		{870B39B9-8F38-D9A4-8A07-87047C565061}.Release|x64.Build.0 = Release|x64

+		{D8295912-D341-F4E4-DC8E-98A2A0604221}.Debug|Win32.ActiveCfg = Debug|Win32

+		{D8295912-D341-F4E4-DC8E-98A2A0604221}.Debug|Win32.Build.0 = Debug|Win32

+		{D8295912-D341-F4E4-DC8E-98A2A0604221}.Debug|x64.ActiveCfg = Debug|x64

+		{D8295912-D341-F4E4-DC8E-98A2A0604221}.Debug|x64.Build.0 = Debug|x64

+		{D8295912-D341-F4E4-DC8E-98A2A0604221}.Release|Win32.ActiveCfg = Release|Win32

+		{D8295912-D341-F4E4-DC8E-98A2A0604221}.Release|Win32.Build.0 = Release|Win32

+		{D8295912-D341-F4E4-DC8E-98A2A0604221}.Release|x64.ActiveCfg = Release|x64

+		{D8295912-D341-F4E4-DC8E-98A2A0604221}.Release|x64.Build.0 = Release|x64

+		{68EFA4E3-08B0-2925-0EF6-177996B08B24}.Debug|Win32.ActiveCfg = Debug|Win32

+		{68EFA4E3-08B0-2925-0EF6-177996B08B24}.Debug|Win32.Build.0 = Debug|Win32

+		{68EFA4E3-08B0-2925-0EF6-177996B08B24}.Debug|x64.ActiveCfg = Debug|x64

+		{68EFA4E3-08B0-2925-0EF6-177996B08B24}.Debug|x64.Build.0 = Debug|x64

+		{68EFA4E3-08B0-2925-0EF6-177996B08B24}.Release|Win32.ActiveCfg = Release|Win32

+		{68EFA4E3-08B0-2925-0EF6-177996B08B24}.Release|Win32.Build.0 = Release|Win32

+		{68EFA4E3-08B0-2925-0EF6-177996B08B24}.Release|x64.ActiveCfg = Release|x64

+		{68EFA4E3-08B0-2925-0EF6-177996B08B24}.Release|x64.Build.0 = Release|x64

+		{2E5B8634-26AC-5819-5AF7-16F996A7F529}.Debug|Win32.ActiveCfg = Debug|Win32

+		{2E5B8634-26AC-5819-5AF7-16F996A7F529}.Debug|Win32.Build.0 = Debug|Win32

+		{2E5B8634-26AC-5819-5AF7-16F996A7F529}.Debug|x64.ActiveCfg = Debug|x64

+		{2E5B8634-26AC-5819-5AF7-16F996A7F529}.Debug|x64.Build.0 = Debug|x64

+		{2E5B8634-26AC-5819-5AF7-16F996A7F529}.Release|Win32.ActiveCfg = Release|Win32

+		{2E5B8634-26AC-5819-5AF7-16F996A7F529}.Release|Win32.Build.0 = Release|Win32

+		{2E5B8634-26AC-5819-5AF7-16F996A7F529}.Release|x64.ActiveCfg = Release|x64

+		{2E5B8634-26AC-5819-5AF7-16F996A7F529}.Release|x64.Build.0 = Release|x64

+		{D93D1FF0-5E83-2247-31A0-017D20F8011F}.Debug|Win32.ActiveCfg = Debug|Win32

+		{D93D1FF0-5E83-2247-31A0-017D20F8011F}.Debug|Win32.Build.0 = Debug|Win32

+		{D93D1FF0-5E83-2247-31A0-017D20F8011F}.Debug|x64.ActiveCfg = Debug|x64

+		{D93D1FF0-5E83-2247-31A0-017D20F8011F}.Debug|x64.Build.0 = Debug|x64

+		{D93D1FF0-5E83-2247-31A0-017D20F8011F}.Release|Win32.ActiveCfg = Release|Win32

+		{D93D1FF0-5E83-2247-31A0-017D20F8011F}.Release|Win32.Build.0 = Release|Win32

+		{D93D1FF0-5E83-2247-31A0-017D20F8011F}.Release|x64.ActiveCfg = Release|x64

+		{D93D1FF0-5E83-2247-31A0-017D20F8011F}.Release|x64.Build.0 = Release|x64

+		{C5DF2F0C-3EFC-E5D6-7FD2-AD599CADDB15}.Debug|Win32.ActiveCfg = Debug|Win32

+		{C5DF2F0C-3EFC-E5D6-7FD2-AD599CADDB15}.Debug|Win32.Build.0 = Debug|Win32

+		{C5DF2F0C-3EFC-E5D6-7FD2-AD599CADDB15}.Debug|x64.ActiveCfg = Debug|x64

+		{C5DF2F0C-3EFC-E5D6-7FD2-AD599CADDB15}.Debug|x64.Build.0 = Debug|x64

+		{C5DF2F0C-3EFC-E5D6-7FD2-AD599CADDB15}.Release|Win32.ActiveCfg = Release|Win32

+		{C5DF2F0C-3EFC-E5D6-7FD2-AD599CADDB15}.Release|Win32.Build.0 = Release|Win32

+		{C5DF2F0C-3EFC-E5D6-7FD2-AD599CADDB15}.Release|x64.ActiveCfg = Release|x64

+		{C5DF2F0C-3EFC-E5D6-7FD2-AD599CADDB15}.Release|x64.Build.0 = Release|x64

+		{173A0BC9-FF81-3C36-7887-4FBD6032C9FD}.Debug|Win32.ActiveCfg = Debug|Win32

+		{173A0BC9-FF81-3C36-7887-4FBD6032C9FD}.Debug|Win32.Build.0 = Debug|Win32

+		{173A0BC9-FF81-3C36-7887-4FBD6032C9FD}.Debug|x64.ActiveCfg = Debug|x64

+		{173A0BC9-FF81-3C36-7887-4FBD6032C9FD}.Debug|x64.Build.0 = Debug|x64

+		{173A0BC9-FF81-3C36-7887-4FBD6032C9FD}.Release|Win32.ActiveCfg = Release|Win32

+		{173A0BC9-FF81-3C36-7887-4FBD6032C9FD}.Release|Win32.Build.0 = Release|Win32

+		{173A0BC9-FF81-3C36-7887-4FBD6032C9FD}.Release|x64.ActiveCfg = Release|x64

+		{173A0BC9-FF81-3C36-7887-4FBD6032C9FD}.Release|x64.Build.0 = Release|x64

+		{58A8E53D-21CB-5F27-5111-737EBD3F37A0}.Debug|Win32.ActiveCfg = Debug|Win32

+		{58A8E53D-21CB-5F27-5111-737EBD3F37A0}.Debug|Win32.Build.0 = Debug|Win32

+		{58A8E53D-21CB-5F27-5111-737EBD3F37A0}.Debug|x64.ActiveCfg = Debug|x64

+		{58A8E53D-21CB-5F27-5111-737EBD3F37A0}.Debug|x64.Build.0 = Debug|x64

+		{58A8E53D-21CB-5F27-5111-737EBD3F37A0}.Release|Win32.ActiveCfg = Release|Win32

+		{58A8E53D-21CB-5F27-5111-737EBD3F37A0}.Release|Win32.Build.0 = Release|Win32

+		{58A8E53D-21CB-5F27-5111-737EBD3F37A0}.Release|x64.ActiveCfg = Release|x64

+		{58A8E53D-21CB-5F27-5111-737EBD3F37A0}.Release|x64.Build.0 = Release|x64

+		{4DD758B5-6FC5-66C0-1D26-22C74C88FEF3}.Debug|Win32.ActiveCfg = Debug|Win32

+		{4DD758B5-6FC5-66C0-1D26-22C74C88FEF3}.Debug|Win32.Build.0 = Debug|Win32

+		{4DD758B5-6FC5-66C0-1D26-22C74C88FEF3}.Debug|x64.ActiveCfg = Debug|x64

+		{4DD758B5-6FC5-66C0-1D26-22C74C88FEF3}.Debug|x64.Build.0 = Debug|x64

+		{4DD758B5-6FC5-66C0-1D26-22C74C88FEF3}.Release|Win32.ActiveCfg = Release|Win32

+		{4DD758B5-6FC5-66C0-1D26-22C74C88FEF3}.Release|Win32.Build.0 = Release|Win32

+		{4DD758B5-6FC5-66C0-1D26-22C74C88FEF3}.Release|x64.ActiveCfg = Release|x64

+		{4DD758B5-6FC5-66C0-1D26-22C74C88FEF3}.Release|x64.Build.0 = Release|x64

+		{0FC4D326-CF64-AB19-B037-3E3D06EA6798}.Debug|Win32.ActiveCfg = Debug|Win32

+		{0FC4D326-CF64-AB19-B037-3E3D06EA6798}.Debug|Win32.Build.0 = Debug|Win32

+		{0FC4D326-CF64-AB19-B037-3E3D06EA6798}.Debug|x64.ActiveCfg = Debug|x64

+		{0FC4D326-CF64-AB19-B037-3E3D06EA6798}.Debug|x64.Build.0 = Debug|x64

+		{0FC4D326-CF64-AB19-B037-3E3D06EA6798}.Release|Win32.ActiveCfg = Release|Win32

+		{0FC4D326-CF64-AB19-B037-3E3D06EA6798}.Release|Win32.Build.0 = Release|Win32

+		{0FC4D326-CF64-AB19-B037-3E3D06EA6798}.Release|x64.ActiveCfg = Release|x64

+		{0FC4D326-CF64-AB19-B037-3E3D06EA6798}.Release|x64.Build.0 = Release|x64

+		{ACFFE3C9-3628-9B99-E0C9-36CF95F86B5F}.Debug|Win32.ActiveCfg = Debug|Win32

+		{ACFFE3C9-3628-9B99-E0C9-36CF95F86B5F}.Debug|Win32.Build.0 = Debug|Win32

+		{ACFFE3C9-3628-9B99-E0C9-36CF95F86B5F}.Debug|x64.ActiveCfg = Debug|x64

+		{ACFFE3C9-3628-9B99-E0C9-36CF95F86B5F}.Debug|x64.Build.0 = Debug|x64

+		{ACFFE3C9-3628-9B99-E0C9-36CF95F86B5F}.Release|Win32.ActiveCfg = Release|Win32

+		{ACFFE3C9-3628-9B99-E0C9-36CF95F86B5F}.Release|Win32.Build.0 = Release|Win32

+		{ACFFE3C9-3628-9B99-E0C9-36CF95F86B5F}.Release|x64.ActiveCfg = Release|x64

+		{ACFFE3C9-3628-9B99-E0C9-36CF95F86B5F}.Release|x64.Build.0 = Release|x64

+		{9D625831-AF31-CFBA-8855-61C024DA2DE0}.Debug|Win32.ActiveCfg = Debug|Win32

+		{9D625831-AF31-CFBA-8855-61C024DA2DE0}.Debug|Win32.Build.0 = Debug|Win32

+		{9D625831-AF31-CFBA-8855-61C024DA2DE0}.Debug|x64.ActiveCfg = Debug|x64

+		{9D625831-AF31-CFBA-8855-61C024DA2DE0}.Debug|x64.Build.0 = Debug|x64

+		{9D625831-AF31-CFBA-8855-61C024DA2DE0}.Release|Win32.ActiveCfg = Release|Win32

+		{9D625831-AF31-CFBA-8855-61C024DA2DE0}.Release|Win32.Build.0 = Release|Win32

+		{9D625831-AF31-CFBA-8855-61C024DA2DE0}.Release|x64.ActiveCfg = Release|x64

+		{9D625831-AF31-CFBA-8855-61C024DA2DE0}.Release|x64.Build.0 = Release|x64

+		{E3172E20-4935-69C7-A398-C13EAA76818F}.Debug|Win32.ActiveCfg = Debug|Win32

+		{E3172E20-4935-69C7-A398-C13EAA76818F}.Debug|Win32.Build.0 = Debug|Win32

+		{E3172E20-4935-69C7-A398-C13EAA76818F}.Debug|x64.ActiveCfg = Debug|x64

+		{E3172E20-4935-69C7-A398-C13EAA76818F}.Debug|x64.Build.0 = Debug|x64

+		{E3172E20-4935-69C7-A398-C13EAA76818F}.Release|Win32.ActiveCfg = Release|Win32

+		{E3172E20-4935-69C7-A398-C13EAA76818F}.Release|Win32.Build.0 = Release|Win32

+		{E3172E20-4935-69C7-A398-C13EAA76818F}.Release|x64.ActiveCfg = Release|x64

+		{E3172E20-4935-69C7-A398-C13EAA76818F}.Release|x64.Build.0 = Release|x64

+		{10F967D6-468F-3BCA-2D58-36A32E376930}.Debug|Win32.ActiveCfg = Debug|Win32

+		{10F967D6-468F-3BCA-2D58-36A32E376930}.Debug|Win32.Build.0 = Debug|Win32

+		{10F967D6-468F-3BCA-2D58-36A32E376930}.Debug|x64.ActiveCfg = Debug|x64

+		{10F967D6-468F-3BCA-2D58-36A32E376930}.Debug|x64.Build.0 = Debug|x64

+		{10F967D6-468F-3BCA-2D58-36A32E376930}.Release|Win32.ActiveCfg = Release|Win32

+		{10F967D6-468F-3BCA-2D58-36A32E376930}.Release|Win32.Build.0 = Release|Win32

+		{10F967D6-468F-3BCA-2D58-36A32E376930}.Release|x64.ActiveCfg = Release|x64

+		{10F967D6-468F-3BCA-2D58-36A32E376930}.Release|x64.Build.0 = Release|x64

+		{5ABF68F6-5360-DE1F-74B6-66ED5BF52619}.Debug|Win32.ActiveCfg = Debug|Win32

+		{5ABF68F6-5360-DE1F-74B6-66ED5BF52619}.Debug|Win32.Build.0 = Debug|Win32

+		{5ABF68F6-5360-DE1F-74B6-66ED5BF52619}.Debug|x64.ActiveCfg = Debug|x64

+		{5ABF68F6-5360-DE1F-74B6-66ED5BF52619}.Debug|x64.Build.0 = Debug|x64

+		{5ABF68F6-5360-DE1F-74B6-66ED5BF52619}.Release|Win32.ActiveCfg = Release|Win32

+		{5ABF68F6-5360-DE1F-74B6-66ED5BF52619}.Release|Win32.Build.0 = Release|Win32

+		{5ABF68F6-5360-DE1F-74B6-66ED5BF52619}.Release|x64.ActiveCfg = Release|x64

+		{5ABF68F6-5360-DE1F-74B6-66ED5BF52619}.Release|x64.Build.0 = Release|x64

 	EndGlobalSection

 	GlobalSection(SolutionProperties) = preSolution

 		HideSolutionNode = FALSE