solved problems in OOP