Exposing some members as protected to allow better subclass resolution