cs314 assignment 2