comp-599-assignment-3