updated model with scopes