Final project for cs498