private to protected to allow inheritance