Programming Assignment 3 - EECS 391