more comments, code to test solution