change constructor access level to public