advanced oop of python