rewrite all model properties as private
fix conflict