make compilable on MSVC