refactor with win32 extensions