cop4531 assignment 3