EECS233 Programming Assignment 2