CS97 final project