Final project for CS 110