added more comments, comments are good