EECS 391: Programming Assignment 1