Addressed some of the issues, raised by @paulp