Changed all private to protected