diff --git a/.paket/Paket.Restore.targets b/.paket/Paket.Restore.targets
new file mode 100644
index 00000000..a86be3a1
--- /dev/null
+++ b/.paket/Paket.Restore.targets
@@ -0,0 +1,272 @@
+
+
+
+
+
+
+ $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
+
+ true
+ $(MSBuildThisFileDirectory)
+ $(MSBuildThisFileDirectory)..\
+ $(PaketRootPath)paket-files\paket.restore.cached
+ $(PaketRootPath)paket.lock
+ /Library/Frameworks/Mono.framework/Commands/mono
+ mono
+
+ $(PaketRootPath)paket.exe
+ $(PaketToolsPath)paket.exe
+ "$(PaketExePath)"
+ $(MonoPath) --runtime=v4.0.30319 "$(PaketExePath)"
+
+
+ <_PaketExeExtension>$([System.IO.Path]::GetExtension("$(PaketExePath)"))
+ dotnet "$(PaketExePath)"
+
+ $(PaketRootPath)paket.bootstrapper.exe
+ $(PaketToolsPath)paket.bootstrapper.exe
+ "$(PaketBootStrapperExePath)"
+ $(MonoPath) --runtime=v4.0.30319 "$(PaketBootStrapperExePath)"
+
+
+
+
+ true
+ true
+
+
+
+
+
+
+ true
+ $(NoWarn);NU1603
+
+
+
+
+ /usr/bin/shasum $(PaketRestoreCacheFile) | /usr/bin/awk '{ print $1 }'
+ /usr/bin/shasum $(PaketLockFilePath) | /usr/bin/awk '{ print $1 }'
+
+
+
+
+
+
+
+
+
+
+
+
+ $([System.IO.File]::ReadAllText('$(PaketRestoreCacheFile)'))
+ $([System.IO.File]::ReadAllText('$(PaketLockFilePath)'))
+ true
+ false
+ true
+
+
+
+
+
+
+
+
+ $(MSBuildProjectDirectory)\obj\$(MSBuildProjectFile).paket.references.cached
+
+ $(MSBuildProjectFullPath).paket.references
+
+ $(MSBuildProjectDirectory)\$(MSBuildProjectName).paket.references
+
+ $(MSBuildProjectDirectory)\paket.references
+ $(MSBuildProjectDirectory)\obj\$(MSBuildProjectFile).$(TargetFramework).paket.resolved
+ true
+ references-file-or-cache-not-found
+
+
+
+
+ $([System.IO.File]::ReadAllText('$(PaketReferencesCachedFilePath)'))
+ $([System.IO.File]::ReadAllText('$(PaketOriginalReferencesFilePath)'))
+ references-file
+ false
+
+
+
+
+ false
+
+
+
+
+ true
+ target-framework '$(TargetFramework)'
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[0])
+ $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[1])
+ $([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[4])
+
+
+ %(PaketReferencesFileLinesInfo.PackageVersion)
+ All
+
+
+
+
+ $(MSBuildProjectDirectory)/obj/$(MSBuildProjectFile).paket.clitools
+
+
+
+
+
+
+
+
+ $([System.String]::Copy('%(PaketCliToolFileLines.Identity)').Split(',')[0])
+ $([System.String]::Copy('%(PaketCliToolFileLines.Identity)').Split(',')[1])
+
+
+ %(PaketCliToolFileLinesInfo.PackageVersion)
+
+
+
+
+ $(MSBuildProjectDirectory)/obj/$(MSBuildProjectFile).NuGet.Config
+
+
+
+
+
+
+ false
+
+
+
+
+
+ <_NuspecFilesNewLocation Include="$(BaseIntermediateOutputPath)$(Configuration)\*.nuspec"/>
+
+
+
+ $(MSBuildProjectDirectory)/$(MSBuildProjectFile)
+ true
+ false
+ true
+ $(BaseIntermediateOutputPath)$(Configuration)
+ $(BaseIntermediateOutputPath)
+
+
+
+ <_NuspecFiles Include="$(AdjustedNuspecOutputPath)\*.nuspec"/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/MathNet.Numerics.sln.DotSettings b/MathNet.Numerics.sln.DotSettings
index 8e5ab65e..816b19f2 100644
--- a/MathNet.Numerics.sln.DotSettings
+++ b/MathNet.Numerics.sln.DotSettings
@@ -27,7 +27,10 @@
False
False
True
+ NEVER
+ NEVER
False
+ NEVER
False
True
False
@@ -102,7 +105,12 @@ OTHER DEALINGS IN THE SOFTWARE.
SVD
TFQMR
WH
+ True
+ True
+ True
+ True
True
+ True
True
True
<data />
diff --git a/RELEASENOTES.md b/RELEASENOTES.md
index 07c49637..f702528b 100644
--- a/RELEASENOTES.md
+++ b/RELEASENOTES.md
@@ -1,3 +1,9 @@
+### 3.20.1 - 2018-01-13
+* Bugfixes backported from v4:
+* BUG: Trigonometry: Fix imaginary part sign of complex hyperbolic cotangent
+* BUG: Ode Solver: fix typo in the Runge-Kutta solvers on time-step handling *~Ksero*
+* BUG: fix Matrix.GetHashCode for wide matrices *~mjmckp*
+
### 3.20.0 - 2017-07-15
* Optimization: non-linear optimization algorithms *~Scott Stephens, Erik Ovegard, bdodson, et al.*
* Native Providers: from now on also supported in the .Net 3.5 build.
diff --git a/src/FSharp/AssemblyInfo.fs b/src/FSharp/AssemblyInfo.fs
index 7ce36f42..4535d34b 100644
--- a/src/FSharp/AssemblyInfo.fs
+++ b/src/FSharp/AssemblyInfo.fs
@@ -44,9 +44,9 @@ open System.Runtime.InteropServices
[]
[]
-[]
-[]
-[]
+[]
+[]
+[]
#if PORTABLE
#else
diff --git a/src/FSharpUnitTests/AssemblyInfo.fs b/src/FSharpUnitTests/AssemblyInfo.fs
index 9b69c0e8..b889ff7e 100644
--- a/src/FSharpUnitTests/AssemblyInfo.fs
+++ b/src/FSharpUnitTests/AssemblyInfo.fs
@@ -10,9 +10,9 @@ open System.Runtime.InteropServices
[]
[]
-[]
-[]
-[]
+[]
+[]
+[]
#if PORTABLE
#else
diff --git a/src/Numerics/Properties/AssemblyInfo.cs b/src/Numerics/Properties/AssemblyInfo.cs
index 97e8988e..ecf98445 100644
--- a/src/Numerics/Properties/AssemblyInfo.cs
+++ b/src/Numerics/Properties/AssemblyInfo.cs
@@ -45,9 +45,9 @@ using System.Runtime.InteropServices;
[assembly: CLSCompliant(true)]
[assembly: NeutralResourcesLanguage("en")]
-[assembly: AssemblyVersion("3.20.0.0")]
-[assembly: AssemblyFileVersion("3.20.0.0")]
-[assembly: AssemblyInformationalVersion("3.20.0")]
+[assembly: AssemblyVersion("3.20.1.0")]
+[assembly: AssemblyFileVersion("3.20.1.0")]
+[assembly: AssemblyInformationalVersion("3.20.1")]
#if PORTABLE
diff --git a/src/UnitTests/Properties/AssemblyInfo.cs b/src/UnitTests/Properties/AssemblyInfo.cs
index 8e6f3d04..cd983ca4 100644
--- a/src/UnitTests/Properties/AssemblyInfo.cs
+++ b/src/UnitTests/Properties/AssemblyInfo.cs
@@ -9,8 +9,8 @@ using MathNet.Numerics.UnitTests;
[assembly: ComVisible(false)]
[assembly: Guid("04157581-63f3-447b-a277-83c6e69126a4")]
-[assembly: AssemblyVersion("3.20.0.0")]
-[assembly: AssemblyFileVersion("3.20.0.0")]
-[assembly: AssemblyInformationalVersion("3.20.0")]
+[assembly: AssemblyVersion("3.20.1.0")]
+[assembly: AssemblyFileVersion("3.20.1.0")]
+[assembly: AssemblyInformationalVersion("3.20.1")]
[assembly: UseLinearAlgebraProvider]