assignments for csc 309