toString version OOP