CS645 project 1