This is an OOP I assignment