COMP 3512 Assignment 2