CS249 Final Project