model with type names as variable names