Project 3 for CS1699