Project 2 for CS 447