adopt for VS2010