{M : Type → Type u_1} →
  [Monad M] →
    [MonadLiftT Lean.MetaM M] →
      [MonadControlT Lean.MetaM M] →
        (Lean.SubExpr.Pos → Lean.Expr → M Lean.Expr) → Lean.SubExpr.Pos → Lean.Expr → M Lean.Expr