port to windows

port to windows