refactored
refactored and added comments.
refactored and added comments
added comments
added comments