Project 3 for CSCI-E15