added comments/documentation