Refactor and comment
revert last commit