Migrating from private to protected to make subclassing easier