COSI 236B Programming Assignment 1