# `TypeSafeSDK.Answer.Score`
[🔗](https://github.com/nshkrdotcom/typesafe_sdk/blob/v0.4.1/lib/typesafe_sdk/answer/score.ex#L1)

Score distributions, rounded expectations, modal levels and normalization.

# `expected_level`

```elixir
@spec expected_level(TypeSafeSDK.ScoreAnswer.t()) :: {integer(), term()}
```

Rounded expected level and its caller label; this is NOT necessarily the modal level.

# `max_level`

```elixir
@spec max_level(TypeSafeSDK.ScoreAnswer.t()) :: {integer(), term()} | nil
```

Most probable level and label. Ties choose the lowest index.

# `normalized`

```elixir
@spec normalized(TypeSafeSDK.ScoreAnswer.t()) :: number()
```

Expected score / highest level index; a one-level legacy rubric yields 0.0.

# `ranked`

```elixir
@spec ranked(TypeSafeSDK.ScoreAnswer.t()) :: [{integer(), number()}]
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
