CSCI N300 Project 4