make it compatible with Window