Done most of the assignment 12.