CS598 Final Project