Class project for CSCI201 at the University of Southern California