CMPS 101: Programming Assignment 4