compatible version with .NET 3.5