CMPUT 301 Assignment 1