diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..a70a8a5
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+.vs/
+msvc.build/
+*.vcxproj.user
diff --git a/vs/vs2017/TurboPFor.sln b/vs/vs2017/TurboPFor.sln
new file mode 100644
index 0000000..220f7f1
--- /dev/null
+++ b/vs/vs2017/TurboPFor.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 15
+VisualStudioVersion = 15.0.28307.757
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TurboPFor", "TurboPFor.vcxproj", "{A162F37F-183F-4250-88AB-9B9FBDE30B04}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "icapp", "icapp.vcxproj", "{6876BEB8-2B45-48B9-8381-1D4094FE8868}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Release|x64 = Release|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {A162F37F-183F-4250-88AB-9B9FBDE30B04}.Debug|x64.ActiveCfg = Debug|x64
+ {A162F37F-183F-4250-88AB-9B9FBDE30B04}.Debug|x64.Build.0 = Debug|x64
+ {A162F37F-183F-4250-88AB-9B9FBDE30B04}.Release|x64.ActiveCfg = Release|x64
+ {A162F37F-183F-4250-88AB-9B9FBDE30B04}.Release|x64.Build.0 = Release|x64
+ {6876BEB8-2B45-48B9-8381-1D4094FE8868}.Debug|x64.ActiveCfg = Debug|x64
+ {6876BEB8-2B45-48B9-8381-1D4094FE8868}.Debug|x64.Build.0 = Debug|x64
+ {6876BEB8-2B45-48B9-8381-1D4094FE8868}.Release|x64.ActiveCfg = Release|x64
+ {6876BEB8-2B45-48B9-8381-1D4094FE8868}.Release|x64.Build.0 = Release|x64
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {A02524FA-10E2-4E1C-BE79-0AE7B077D2CE}
+ EndGlobalSection
+EndGlobal
diff --git a/vs/vs2017/TurboPFor.vcxproj b/vs/vs2017/TurboPFor.vcxproj
new file mode 100644
index 0000000..fe1e42f
--- /dev/null
+++ b/vs/vs2017/TurboPFor.vcxproj
@@ -0,0 +1,125 @@
+
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 15.0
+ {A162F37F-183F-4250-88AB-9B9FBDE30B04}
+ Win32Proj
+ TurboPFor
+ 10.0.17763.0
+ TurboPFor
+
+
+
+ StaticLibrary
+ true
+ v141
+
+
+ StaticLibrary
+ false
+ v141
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ $(SolutionDir)msvc.build\.obj\$(Platform)-$(Configuration)-$(ProjectName)\
+ $(SolutionDir)msvc.build\$(Platform)-$(Configuration)\
+
+
+ false
+ $(SolutionDir)msvc.build\.obj\$(Platform)-$(Configuration)-$(ProjectName)\
+ $(SolutionDir)msvc.build\$(Platform)-$(Configuration)\
+
+
+
+ Disabled
+ true
+ __SSE__;__SSE2__;__SSE3__;__SSSE3__;__SSE4_1__;__SSE4_2__;USE_SSE;USE_AVX2;_CRT_SECURE_NO_WARNINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ AdvancedVectorExtensions2
+ MultiThreadedDebug
+ true
+ /w24003 /w24005 /w24028 /w24047 /w24090 /w24133 /w24146 /w24333 /w24789 %(AdditionalOptions)
+
+
+ Console
+ true
+
+
+
+
+ MaxSpeed
+ true
+ true
+ true
+ __SSE__;__SSE2__;__SSE3__;__SSSE3__;__SSE4_1__;__SSE4_2__;USE_SSE;USE_AVX2;_CRT_SECURE_NO_WARNINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ AdvancedVectorExtensions2
+ Speed
+ MultiThreaded
+ true
+ /w24003 /w24005 /w24028 /w24047 /w24090 /w24133 /w24146 /w24333 /w24789 %(AdditionalOptions)
+
+
+ Console
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/vs/vs2017/TurboPFor.vcxproj.filters b/vs/vs2017/TurboPFor.vcxproj.filters
new file mode 100644
index 0000000..3c94a99
--- /dev/null
+++ b/vs/vs2017/TurboPFor.vcxproj.filters
@@ -0,0 +1,98 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;hm;inl;inc;ipp;xsd
+
+
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+
\ No newline at end of file
diff --git a/vs/vs2017/icapp.vcxproj b/vs/vs2017/icapp.vcxproj
new file mode 100644
index 0000000..b1557d2
--- /dev/null
+++ b/vs/vs2017/icapp.vcxproj
@@ -0,0 +1,101 @@
+
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+
+
+
+
+
+ {a162f37f-183f-4250-88ab-9b9fbde30b04}
+
+
+
+ 15.0
+ {6876BEB8-2B45-48B9-8381-1D4094FE8868}
+ Win32Proj
+ icapp
+ 10.0.17763.0
+
+
+
+ Application
+ true
+ v141
+
+
+ Application
+ false
+ v141
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ $(SolutionDir)msvc.build\$(Platform)-$(Configuration)\
+ $(SolutionDir)msvc.build\.obj\$(Platform)-$(Configuration)-$(ProjectName)\
+
+
+ false
+ $(SolutionDir)msvc.build\$(Platform)-$(Configuration)\
+ $(SolutionDir)msvc.build\.obj\$(Platform)-$(Configuration)-$(ProjectName)\
+
+
+
+ Disabled
+ true
+ CODEC2;_CRT_SECURE_NO_WARNINGS;_CONSOLE;_DEBUG;%(PreprocessorDefinitions)
+ true
+ /w24146 /w24133 /w24996
+ MultiThreadedDebug
+ AdvancedVectorExtensions2
+ ..\..\ext
+
+
+ Console
+ true
+
+
+
+
+ MaxSpeed
+ true
+ true
+ true
+ CODEC2;_CRT_SECURE_NO_WARNINGS;_CONSOLE;NDEBUG;%(PreprocessorDefinitions)
+ true
+ /w24146 /w24133 /w24996
+ MultiThreaded
+ AdvancedVectorExtensions2
+ ..\..\ext
+
+
+ Console
+ true
+ true
+ true
+
+
+
+
+
+
\ No newline at end of file
diff --git a/vs/vs2017/icapp.vcxproj.filters b/vs/vs2017/icapp.vcxproj.filters
new file mode 100644
index 0000000..83807a9
--- /dev/null
+++ b/vs/vs2017/icapp.vcxproj.filters
@@ -0,0 +1,21 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;hm;inl;inc;ipp;xsd
+
+
+
+
+ Source Files
+
+
+ Source Files
+
+
+
\ No newline at end of file