CMSC 427: Assignment 3