inline functions on MSVC