EECS 330 final project