smarter delegation in overridden methods