making it more platform independent