moved more stuff in the base class