{α : Type} →
  {m : Type → Type} →
    [Monad m] →
      [Lean.MonadTrace m] →
        {ε : Type} →
          [Lean.MonadRef m] →
            [Lean.AddMessageContext m] →
              [always : Lean.MonadAlwaysExcept ε m] →
                [Lean.ExceptToTraceResult ε α] →
                  Lean.Name →
                    Bool →
                      String →
                        Lean.Options →
                          Bool →
                            Lean.PersistentArray Lean.TraceElem →
                              Lean.Syntax → Lean.MessageData → Except ε α × Float × Float → m α