CS3280 Final Project