add comments, cleaning