CMPUT 350 Assignment