Assignment 2 for CIS2520 at University of Guelph