add comments
refactor