CS585 Final Project