Completed OOP lecture 2