(motive : Lean.Syntax → Sort u_1) →
  (x : Lean.Syntax) →
    (Unit → motive Lean.Syntax.missing) →
      ((a : Lean.SourceInfo) →
          (a_1 : Lean.SyntaxNodeKind) → (a_2 : Array Lean.Syntax) → motive (Lean.Syntax.node a a_1 a_2)) →
        ((a : Lean.SourceInfo) → (a_1 : String) → motive (Lean.Syntax.atom a a_1)) →
          ((a : Lean.SourceInfo) →
              (a_1 : Substring.Raw) →
                (a_2 : Lean.Name) → (a_3 : List Lean.Syntax.Preresolved) → motive (Lean.Syntax.ident a a_1 a_2 a_3)) →
            motive x