replace __WIN32__ with _WIN32 to work with msvc