CMPSC 473 Project 1