refactor model.create to be sync, not validate and infer type from data