updated from codeplex