CISP 430 Assignment 1