Use self (instead of this) for obj reference in all super calls