switch private to protected