OOP homework 4