update
update to make cross platform compatible