(motive : Lean.Syntax → Sort u_1) →
  (stx : Lean.Syntax) →
    (Unit → motive Lean.Syntax.missing) →
      ((info : Lean.SourceInfo) → (val : String) → motive (Lean.Syntax.atom info val)) →
        ((info : Lean.SourceInfo) →
            (rawVal : Substring.Raw) →
              (val : Lean.Name) →
                (preresolved : List Lean.Syntax.Preresolved) → motive (Lean.Syntax.ident info rawVal val preresolved)) →
          ((info : Lean.SourceInfo) →
              (kind : Lean.SyntaxNodeKind) → (args : Array Lean.Syntax) → motive (Lean.Syntax.node info kind args)) →
            motive stx