finalized this assignment