csc207-hw2.