updated with final comments