Modify visibility to protected
Fix recusive pasring to array