Backporting to MSVC