Update: incorporated suggestions by @geemus