CMPUT 379 Assignment 2