Why is this generic? Why does this return an `Option[Map[B, Meter]]`? Why not return either an `Option[(Int, Meter)]` or, since it will always be defined, just return `(Int, Meter)`?