{P : Sort u} →
  {oldInlayHints : Array Lean.Elab.InlayHintInfo} →
    {oldFinishedSnaps : ℕ} →
      {lastEditTimestamp? : Option ℕ} →
        {isFirstRequestAfterEdit : Bool} →
          {oldInlayHints' : Array Lean.Elab.InlayHintInfo} →
            {oldFinishedSnaps' : ℕ} →
              {lastEditTimestamp?' : Option ℕ} →
                {isFirstRequestAfterEdit' : Bool} →
                  { oldInlayHints := oldInlayHints, oldFinishedSnaps := oldFinishedSnaps,
                        lastEditTimestamp? := lastEditTimestamp?, isFirstRequestAfterEdit := isFirstRequestAfterEdit } =
                      { oldInlayHints := oldInlayHints', oldFinishedSnaps := oldFinishedSnaps',
                        lastEditTimestamp? := lastEditTimestamp?',
                        isFirstRequestAfterEdit := isFirstRequestAfterEdit' } →
                    (oldInlayHints = oldInlayHints' →
                        oldFinishedSnaps = oldFinishedSnaps' →
                          lastEditTimestamp? = lastEditTimestamp?' →
                            isFirstRequestAfterEdit = isFirstRequestAfterEdit' → P) →
                      P