{P : Sort u} →
  {toWorkDoneProgressParams : Lean.Lsp.WorkDoneProgressParams} →
    {textDocument : Lean.Lsp.TextDocumentIdentifier} →
      {range : Lean.Lsp.Range} →
        {toWorkDoneProgressParams' : Lean.Lsp.WorkDoneProgressParams} →
          {textDocument' : Lean.Lsp.TextDocumentIdentifier} →
            {range' : Lean.Lsp.Range} →
              { toWorkDoneProgressParams := toWorkDoneProgressParams, textDocument := textDocument, range := range } =
                  { toWorkDoneProgressParams := toWorkDoneProgressParams', textDocument := textDocument',
                    range := range' } →
                (toWorkDoneProgressParams = toWorkDoneProgressParams' →
                    textDocument = textDocument' → range = range' → P) →
                  P