porting codeplex repository