CSC221 Project 2