(motive : Lean.Syntax → Sort u_1) →
  (x : Lean.Syntax) →
    ((info : Lean.SourceInfo) →
        (kind : Lean.SyntaxNodeKind) → (args : Array Lean.Syntax) → motive (Lean.Syntax.node info kind args)) →
      ((info : Lean.SourceInfo) →
          (rawVal : Substring.Raw) →
            (nm : Lean.Name) →
              (preresolved : List Lean.Syntax.Preresolved) → motive (Lean.Syntax.ident info rawVal nm preresolved)) →
        ((x : Lean.Syntax) → motive x) → motive x