fix several typo, fix wrong method access protected to public