CMPUT 379 Assignment 1