added support for linux and mac os