finish OOP7