Its a design decision to pass the most derived class to the downstream operator so that it can decide which reference to use from the the object's hierarchy.