CA 321 Assignment 2; Due Friday 5th December 18:00