more true to oop