cpsc310 assignment #2