added comments for everything