cmput410 assignment 2