CMSC 427: Assignment 4