class hierarchy | explicit overriding