updated to run against .net 4