fork from codeplex