Changed some private props to protected.