Making protected members virtual