I made some improvements apart from other comments above and committed. Thank...