I think so. It sounds to me like you want a `self.predicted_score` method, but also a `self.known_score` method, so that you can grab either one. I think `self.known_score` would be without the team score added, and `self.predicted_score` would basically be `self.known_score | self.score`. I'm assuming here that `team_score` above is equivalent to `self.score` method in the Grade class.

Also, I think your `self.predicted_score` method above needs to be `scoped.not_released.pluck...`, no? Otherwise, you might be losing your `grades.where(course: course)` scope when you call `predicted_score`, but I'm not sure, might want to double check. I always start scope methods off with `scoped.` to be safe.