added a tiny bit more platform independance