CSC345 Midterm