comments added, code is ready for submission