and make it cross platform :O