Skip to main content

rudb_parse/generated/
rules.rs

1//! DuckDB's grammar, compiled to a table the matcher walks.
2//!
3//! @generated by `cargo xtask gen-grammar` from the vendored grammar. Do not edit.
4//! `cargo xtask gen-grammar --check` runs in the gate and fails if this file and the
5//! grammar disagree.
6//!
7//! `NODES` is the whole grammar. A node is twenty four bytes and carries its FIRST set
8//! and its nullable bit, so deciding whether an alternative can match the token in hand
9//! and then walking it read the same twenty four bytes. A `Rule` node carries the index
10//! of its body as well as the index of the rule, so entering a rule never reads `RULES`.
11//! `CHILDREN` holds the child lists of sequences and choices, contiguous per node, so a
12//! sequence is a slice rather than a chase. Rules are the only nodes that are not
13//! expanded in place, which is what keeps the table finite in the face of a recursive
14//! grammar.
15//!
16//! Every table carries `#[rustfmt::skip]`, because the generator and rustfmt disagree
17//! about `CHILDREN` and `SYMBOLS` and something has to win. rustfmt packs an
18//! array whose elements are short onto as many per line as fit, so `cargo fmt` rewrote
19//! this file and then `gen-grammar --check` failed on it, with both halves of the gate
20//! correct and the working tree unable to satisfy them at once. One element a line is the
21//! better answer anyway: a packed array reflows a whole block of lines when one entry
22//! changes, and the point of checking this file in is that a grammar bump is a diff
23//! somebody reads. The attribute is on all four rather than the two, so that a change to
24//! rustfmt's width threshold cannot bring the disagreement back.
25
26use crate::rules::{Node, Op, Rule, Suggestion};
27
28/// The root. `Program` is what a whole script parses as.
29pub const PROGRAM: u32 = 702;
30
31/// The other root upstream requires, for parsing one statement rather than a script.
32pub const TOP_LEVEL_STATEMENT: u32 = 960;
33
34/// The nodes. Each one carries what it can start with, as a set of token keys, and that
35/// set is a superset always: a bit that is set may still fail to match, and a bit that is
36/// clear cannot possibly match, which is the only direction a filter is allowed to be
37/// wrong in. `Node::NULLABLE` in `flags` says the node can match nothing at all, and a
38/// node like that is never filtered out.
39#[rustfmt::skip]
40pub static NODES: [Node; 4720] = [
41    Node { op: Op::Keyword, flags: 0, a: 0, b: 0, first: 0x0000000000000040 },
42    Node { op: Op::Keyword, flags: 0, a: 368, b: 0, first: 0x0000000004000000 },
43    Node { op: Op::Choice, flags: 0, a: 0, b: 2, first: 0x0000000004000040 },
44    Node { op: Op::Keyword, flags: 0, a: 4, b: 0, first: 0x0000000000000400 },
45    Node { op: Op::Keyword, flags: 0, a: 63, b: 0, first: 0x0000000000000800 },
46    Node { op: Op::Optional, flags: 2, a: 4, b: 0, first: 0x0000000000000800 },
47    Node { op: Op::Rule, flags: 0, a: 429, b: 1960, first: 0x0000000000004000 },
48    Node { op: Op::Optional, flags: 2, a: 6, b: 0, first: 0x0000000000004000 },
49    Node { op: Op::Rule, flags: 0, a: 2, b: 18, first: 0xffffffffffffffc1 },
50    Node { op: Op::Sequence, flags: 0, a: 2, b: 4, first: 0x0000000000000400 },
51    Node { op: Op::Rule, flags: 0, a: 267, b: 1230, first: 0xffffffffffffffc1 },
52    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
53    Node { op: Op::Optional, flags: 2, a: 11, b: 0, first: 0xffffffffffffffc1 },
54    Node { op: Op::Rule, flags: 0, a: 393, b: 1818, first: 0x0080000004000000 },
55    Node { op: Op::Optional, flags: 2, a: 13, b: 0, first: 0x0080000004000000 },
56    Node { op: Op::Rule, flags: 0, a: 130, b: 628, first: 0x2203140000000200 },
57    Node { op: Op::Repeat, flags: 0, a: 15, b: 0, first: 0x2203140000000200 },
58    Node { op: Op::Optional, flags: 2, a: 16, b: 0, first: 0x2203140000000200 },
59    Node { op: Op::Sequence, flags: 0, a: 6, b: 4, first: 0xffffffffffffffc1 },
60    Node { op: Op::Keyword, flags: 0, a: 4, b: 0, first: 0x0000000000000400 },
61    Node { op: Op::Rule, flags: 0, a: 958, b: 4140, first: 0x2201040000800000 },
62    Node { op: Op::Sequence, flags: 0, a: 10, b: 2, first: 0x0000000000000400 },
63    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
64    Node { op: Op::Keyword, flags: 0, a: 100, b: 0, first: 0x0001000000000000 },
65    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
66    Node { op: Op::Sequence, flags: 0, a: 12, b: 3, first: 0x0004000000000000 },
67    Node { op: Op::Rule, flags: 0, a: 4, b: 25, first: 0x0004000000000000 },
68    Node { op: Op::Rule, flags: 0, a: 274, b: 1269, first: 0x0000000000004000 },
69    Node { op: Op::Choice, flags: 0, a: 15, b: 2, first: 0x0004000000004000 },
70    Node { op: Op::Rule, flags: 0, a: 560, b: 2574, first: 0xffffffffffffffcf },
71    Node { op: Op::Rule, flags: 0, a: 7, b: 36, first: 0x0000000000000008 },
72    Node { op: Op::Repeat, flags: 0, a: 30, b: 0, first: 0x0000000000000008 },
73    Node { op: Op::Optional, flags: 2, a: 31, b: 0, first: 0x0000000000000008 },
74    Node { op: Op::Sequence, flags: 0, a: 17, b: 2, first: 0xffffffffffffffcf },
75    Node { op: Op::Rule, flags: 0, a: 948, b: 4113, first: 0x0000000000000008 },
76    Node { op: Op::Rule, flags: 0, a: 560, b: 2574, first: 0xffffffffffffffcf },
77    Node { op: Op::Sequence, flags: 0, a: 19, b: 2, first: 0x0000000000000008 },
78    Node { op: Op::Rule, flags: 0, a: 115, b: 560, first: 0xffffffffffffffc1 },
79    Node { op: Op::Rule, flags: 0, a: 329, b: 1570, first: 0xffffffffffffffcf },
80    Node { op: Op::Rule, flags: 0, a: 330, b: 1574, first: 0xffffffffffffffcf },
81    Node { op: Op::Choice, flags: 0, a: 21, b: 3, first: 0xffffffffffffffcf },
82    Node { op: Op::Keyword, flags: 0, a: 9, b: 0, first: 0x0000000000008000 },
83    Node { op: Op::Keyword, flags: 0, a: 11, b: 0, first: 0x0000000000020000 },
84    Node { op: Op::Keyword, flags: 0, a: 63, b: 0, first: 0x0000000000000800 },
85    Node { op: Op::Optional, flags: 2, a: 43, b: 0, first: 0x0000000000000800 },
86    Node { op: Op::Rule, flags: 0, a: 581, b: 2678, first: 0xffffffffffffffc1 },
87    Node { op: Op::Rule, flags: 0, a: 11, b: 51, first: 0x000c000000004000 },
88    Node { op: Op::Sequence, flags: 0, a: 24, b: 4, first: 0x0000000000020000 },
89    Node { op: Op::Rule, flags: 0, a: 5, b: 28, first: 0x0004000000004000 },
90    Node { op: Op::Rule, flags: 0, a: 102, b: 479, first: 0x0004000000004000 },
91    Node { op: Op::Rule, flags: 0, a: 20, b: 120, first: 0x000c000000000000 },
92    Node { op: Op::Choice, flags: 0, a: 28, b: 3, first: 0x000c000000004000 },
93    Node { op: Op::Keyword, flags: 0, a: 90, b: 0, first: 0x0000004000000000 },
94    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
95    Node { op: Op::Optional, flags: 2, a: 53, b: 0, first: 0x0000000000004000 },
96    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
97    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
98    Node { op: Op::Keyword, flags: 0, a: 8, b: 0, first: 0x0000000000000001 },
99    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
100    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
101    Node { op: Op::Sequence, flags: 0, a: 31, b: 7, first: 0x0000004000000000 },
102    Node { op: Op::Rule, flags: 0, a: 19, b: 112, first: 0x0000000002000000 },
103    Node { op: Op::Rule, flags: 0, a: 21, b: 126, first: 0x0000000001000000 },
104    Node { op: Op::Rule, flags: 0, a: 16, b: 81, first: 0x0000200000000000 },
105    Node { op: Op::Rule, flags: 0, a: 12, b: 60, first: 0x0000004000000000 },
106    Node { op: Op::Rule, flags: 0, a: 14, b: 72, first: 0x0000000200000000 },
107    Node { op: Op::Choice, flags: 0, a: 38, b: 5, first: 0x0000204203000000 },
108    Node { op: Op::Keyword, flags: 0, a: 375, b: 0, first: 0x0000000200000000 },
109    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
110    Node { op: Op::Optional, flags: 2, a: 68, b: 0, first: 0x0000000000004000 },
111    Node { op: Op::Rule, flags: 0, a: 705, b: 3133, first: 0xffffffffffffffc5 },
112    Node { op: Op::Rule, flags: 0, a: 737, b: 3258, first: 0x0000000000000400 },
113    Node { op: Op::Sequence, flags: 0, a: 43, b: 4, first: 0x0000000200000000 },
114    Node { op: Op::Rule, flags: 0, a: 738, b: 3259, first: 0x0000000000000400 },
115    Node { op: Op::Rule, flags: 0, a: 841, b: 3626, first: 0x0000041021050200 },
116    Node { op: Op::Choice, flags: 0, a: 47, b: 2, first: 0x0000041021050600 },
117    Node { op: Op::Keyword, flags: 0, a: 387, b: 0, first: 0x0000200000000000 },
118    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
119    Node { op: Op::Optional, flags: 2, a: 77, b: 0, first: 0x0000000000004000 },
120    Node { op: Op::Rule, flags: 0, a: 708, b: 3150, first: 0xffffffffffffffc1 },
121    Node { op: Op::Rule, flags: 0, a: 15, b: 75, first: 0x0000041021050600 },
122    Node { op: Op::Sequence, flags: 0, a: 49, b: 4, first: 0x0000200000000000 },
123    Node { op: Op::Keyword, flags: 0, a: 11, b: 0, first: 0x0000000000020000 },
124    Node { op: Op::Rule, flags: 0, a: 13, b: 66, first: 0x0000204203000000 },
125    Node { op: Op::Sequence, flags: 0, a: 53, b: 2, first: 0x0000000000020000 },
126    Node { op: Op::Rule, flags: 0, a: 1, b: 9, first: 0x0000000000000400 },
127    Node { op: Op::Rule, flags: 0, a: 273, b: 1266, first: 0x0000000000004000 },
128    Node { op: Op::Rule, flags: 0, a: 272, b: 1258, first: 0x0000000000004000 },
129    Node { op: Op::Rule, flags: 0, a: 10, b: 47, first: 0x0000000000020000 },
130    Node { op: Op::Rule, flags: 0, a: 3, b: 21, first: 0x0000000000000400 },
131    Node { op: Op::Rule, flags: 0, a: 102, b: 479, first: 0x0004000000004000 },
132    Node { op: Op::Rule, flags: 0, a: 739, b: 3266, first: 0x0000000000000400 },
133    Node { op: Op::Rule, flags: 0, a: 737, b: 3258, first: 0x0000000000000400 },
134    Node { op: Op::Rule, flags: 0, a: 839, b: 3621, first: 0x0004000000000000 },
135    Node { op: Op::Rule, flags: 0, a: 764, b: 3359, first: 0x0000000000008000 },
136    Node { op: Op::Rule, flags: 0, a: 843, b: 3638, first: 0x0004000000000000 },
137    Node { op: Op::Rule, flags: 0, a: 765, b: 3363, first: 0x0000000000008000 },
138    Node { op: Op::Rule, flags: 0, a: 838, b: 3606, first: 0x0004000000000000 },
139    Node { op: Op::Rule, flags: 0, a: 763, b: 3355, first: 0x0000000000008000 },
140    Node { op: Op::Choice, flags: 0, a: 55, b: 14, first: 0x000400000002c400 },
141    Node { op: Op::Keyword, flags: 0, a: 425, b: 0, first: 0x0000000002000000 },
142    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
143    Node { op: Op::Optional, flags: 2, a: 101, b: 0, first: 0x0000000000004000 },
144    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
145    Node { op: Op::Rule, flags: 0, a: 18, b: 99, first: 0x000400000002c400 },
146    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
147    Node { op: Op::Sequence, flags: 0, a: 69, b: 2, first: 0x0000000000000008 },
148    Node { op: Op::Repeat, flags: 0, a: 106, b: 0, first: 0x0000000000000008 },
149    Node { op: Op::Optional, flags: 2, a: 107, b: 0, first: 0x0000000000000008 },
150    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
151    Node { op: Op::Optional, flags: 2, a: 109, b: 0, first: 0x0000000000000008 },
152    Node { op: Op::Sequence, flags: 0, a: 71, b: 3, first: 0x000400000002c400 },
153    Node { op: Op::Sequence, flags: 0, a: 74, b: 4, first: 0x0000000002000000 },
154    Node { op: Op::Rule, flags: 0, a: 833, b: 3592, first: 0x0004000000000000 },
155    Node { op: Op::Optional, flags: 2, a: 113, b: 0, first: 0x0004000000000000 },
156    Node { op: Op::Keyword, flags: 0, a: 451, b: 0, first: 0x0008000000000000 },
157    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
158    Node { op: Op::Optional, flags: 2, a: 116, b: 0, first: 0xffffffffffffffc1 },
159    Node { op: Op::Rule, flags: 0, a: 1033, b: 4475, first: 0x0000000000000200 },
160    Node { op: Op::Optional, flags: 2, a: 118, b: 0, first: 0x0000000000000200 },
161    Node { op: Op::Sequence, flags: 0, a: 78, b: 4, first: 0x000c000000000000 },
162    Node { op: Op::Keyword, flags: 0, a: 482, b: 0, first: 0x0000000001000000 },
163    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
164    Node { op: Op::Optional, flags: 2, a: 122, b: 0, first: 0x0000000000004000 },
165    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
166    Node { op: Op::Rule, flags: 0, a: 737, b: 3258, first: 0x0000000000000400 },
167    Node { op: Op::Sequence, flags: 0, a: 82, b: 4, first: 0x0000000001000000 },
168    Node { op: Op::Keyword, flags: 0, a: 12, b: 0, first: 0x0000000000040000 },
169    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
170    Node { op: Op::Keyword, flags: 0, a: 100, b: 0, first: 0x0001000000000000 },
171    Node { op: Op::Sequence, flags: 0, a: 86, b: 2, first: 0x0000400000000000 },
172    Node { op: Op::Choice, flags: 0, a: 88, b: 2, first: 0x0000400000040000 },
173    Node { op: Op::Keyword, flags: 0, a: 14, b: 0, first: 0x0000000000100000 },
174    Node { op: Op::Keyword, flags: 0, a: 13, b: 0, first: 0x0000000000080000 },
175    Node { op: Op::Choice, flags: 0, a: 90, b: 2, first: 0x0000000000180000 },
176    Node { op: Op::Rule, flags: 0, a: 23, b: 134, first: 0x0000000000180000 },
177    Node { op: Op::Rule, flags: 0, a: 26, b: 145, first: 0x0000000000400000 },
178    Node { op: Op::Optional, flags: 2, a: 136, b: 0, first: 0x0000000000400000 },
179    Node { op: Op::Rule, flags: 0, a: 25, b: 144, first: 0xffffffffffffffc5 },
180    Node { op: Op::Optional, flags: 2, a: 138, b: 0, first: 0xffffffffffffffc5 },
181    Node { op: Op::Sequence, flags: 0, a: 92, b: 3, first: 0x0000000000180000 },
182    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
183    Node { op: Op::Rule, flags: 0, a: 562, b: 2588, first: 0x0000000000000008 },
184    Node { op: Op::Optional, flags: 2, a: 142, b: 0, first: 0x0000000000000008 },
185    Node { op: Op::Sequence, flags: 0, a: 95, b: 2, first: 0xffffffffffffffc5 },
186    Node { op: Op::Keyword, flags: 0, a: 480, b: 0, first: 0x0000000000400000 },
187    Node { op: Op::Keyword, flags: 0, a: 15, b: 0, first: 0x0000000000200000 },
188    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
189    Node { op: Op::Sequence, flags: 0, a: 97, b: 2, first: 0x0000000000200000 },
190    Node { op: Op::Symbol, flags: 0, a: 1, b: 0, first: 0x0000000000000008 },
191    Node { op: Op::Keyword, flags: 0, a: 16, b: 0, first: 0x0000000000400000 },
192    Node { op: Op::Rule, flags: 0, a: 32, b: 194, first: 0x0000000000000008 },
193    Node { op: Op::Rule, flags: 0, a: 33, b: 197, first: 0x0000000000808000 },
194    Node { op: Op::Sequence, flags: 0, a: 99, b: 2, first: 0x0000000000000008 },
195    Node { op: Op::Rule, flags: 0, a: 30, b: 153, first: 0x0000000000000008 },
196    Node { op: Op::Symbol, flags: 0, a: 2, b: 0, first: 0x0000000000000008 },
197    Node { op: Op::Symbol, flags: 0, a: 3, b: 0, first: 0x0000000000000008 },
198    Node { op: Op::Symbol, flags: 0, a: 4, b: 0, first: 0x0000000000000008 },
199    Node { op: Op::Symbol, flags: 0, a: 5, b: 0, first: 0x0000000000000008 },
200    Node { op: Op::Symbol, flags: 0, a: 6, b: 0, first: 0x0000000000000008 },
201    Node { op: Op::Symbol, flags: 0, a: 7, b: 0, first: 0x0000000000000008 },
202    Node { op: Op::Symbol, flags: 0, a: 8, b: 0, first: 0x0000000000000008 },
203    Node { op: Op::Symbol, flags: 0, a: 9, b: 0, first: 0x0000000000000008 },
204    Node { op: Op::Symbol, flags: 0, a: 10, b: 0, first: 0x0000000000000008 },
205    Node { op: Op::Symbol, flags: 0, a: 11, b: 0, first: 0x0000000000000008 },
206    Node { op: Op::Symbol, flags: 0, a: 12, b: 0, first: 0x0000000000000008 },
207    Node { op: Op::Symbol, flags: 0, a: 13, b: 0, first: 0x0000000000000008 },
208    Node { op: Op::Symbol, flags: 0, a: 14, b: 0, first: 0x0000000000000008 },
209    Node { op: Op::Symbol, flags: 0, a: 15, b: 0, first: 0x0000000000000008 },
210    Node { op: Op::Symbol, flags: 0, a: 16, b: 0, first: 0x0000000000000008 },
211    Node { op: Op::Symbol, flags: 0, a: 17, b: 0, first: 0x0000000000000008 },
212    Node { op: Op::Symbol, flags: 0, a: 18, b: 0, first: 0x0000000000000008 },
213    Node { op: Op::Symbol, flags: 0, a: 19, b: 0, first: 0x0000000000000008 },
214    Node { op: Op::Symbol, flags: 0, a: 20, b: 0, first: 0x0000000000000008 },
215    Node { op: Op::Symbol, flags: 0, a: 21, b: 0, first: 0x0000000000000008 },
216    Node { op: Op::Symbol, flags: 0, a: 22, b: 0, first: 0x0000000000000008 },
217    Node { op: Op::Symbol, flags: 0, a: 23, b: 0, first: 0x0000000000000008 },
218    Node { op: Op::Symbol, flags: 0, a: 24, b: 0, first: 0x0000000000000008 },
219    Node { op: Op::Symbol, flags: 0, a: 25, b: 0, first: 0x0000000000000008 },
220    Node { op: Op::Symbol, flags: 0, a: 26, b: 0, first: 0x0000000000000008 },
221    Node { op: Op::Symbol, flags: 0, a: 27, b: 0, first: 0x0000000000000008 },
222    Node { op: Op::Symbol, flags: 0, a: 28, b: 0, first: 0x0000000000000008 },
223    Node { op: Op::Symbol, flags: 0, a: 29, b: 0, first: 0x0000000000000008 },
224    Node { op: Op::Symbol, flags: 0, a: 30, b: 0, first: 0x0000000000000008 },
225    Node { op: Op::Symbol, flags: 0, a: 31, b: 0, first: 0x0000000000000008 },
226    Node { op: Op::Symbol, flags: 0, a: 32, b: 0, first: 0x0000000000000008 },
227    Node { op: Op::Symbol, flags: 0, a: 33, b: 0, first: 0x0000000000000008 },
228    Node { op: Op::Symbol, flags: 0, a: 34, b: 0, first: 0x0000000000000008 },
229    Node { op: Op::Symbol, flags: 0, a: 35, b: 0, first: 0x0000000000000008 },
230    Node { op: Op::Symbol, flags: 0, a: 36, b: 0, first: 0x0000000000000008 },
231    Node { op: Op::Symbol, flags: 0, a: 37, b: 0, first: 0x0000000000000008 },
232    Node { op: Op::Symbol, flags: 0, a: 38, b: 0, first: 0x0000000000000008 },
233    Node { op: Op::Symbol, flags: 0, a: 39, b: 0, first: 0x0000000000000008 },
234    Node { op: Op::Symbol, flags: 0, a: 40, b: 0, first: 0x0000000000000008 },
235    Node { op: Op::Choice, flags: 0, a: 101, b: 39, first: 0x0000000000000008 },
236    Node { op: Op::Rule, flags: 0, a: 907, b: 3939, first: 0x0000000000800000 },
237    Node { op: Op::Rule, flags: 0, a: 906, b: 3938, first: 0x0000000000008000 },
238    Node { op: Op::Choice, flags: 0, a: 140, b: 2, first: 0x0000000000808000 },
239    Node { op: Op::Rule, flags: 0, a: 568, b: 2610, first: 0x0000000001000000 },
240    Node { op: Op::Rule, flags: 0, a: 572, b: 2624, first: 0x0000000002000000 },
241    Node { op: Op::Choice, flags: 0, a: 142, b: 2, first: 0x0000000003000000 },
242    Node { op: Op::Keyword, flags: 0, a: 19, b: 0, first: 0x0000000002000000 },
243    Node { op: Op::Optional, flags: 2, a: 201, b: 0, first: 0x0000000002000000 },
244    Node { op: Op::Rule, flags: 0, a: 71, b: 370, first: 0x0000000000000008 },
245    Node { op: Op::Sequence, flags: 0, a: 144, b: 2, first: 0x0000000002000008 },
246    Node { op: Op::Rule, flags: 0, a: 38, b: 212, first: 0x0000000002000000 },
247    Node { op: Op::Rule, flags: 0, a: 888, b: 3846, first: 0x0000000000000008 },
248    Node { op: Op::Rule, flags: 0, a: 37, b: 209, first: 0x0000000002000000 },
249    Node { op: Op::Choice, flags: 0, a: 146, b: 3, first: 0x0000000002000008 },
250    Node { op: Op::Keyword, flags: 0, a: 19, b: 0, first: 0x0000000002000000 },
251    Node { op: Op::Keyword, flags: 0, a: 19, b: 0, first: 0x0000000002000000 },
252    Node { op: Op::Rule, flags: 0, a: 888, b: 3846, first: 0x0000000000000008 },
253    Node { op: Op::Sequence, flags: 0, a: 149, b: 2, first: 0x0000000002000000 },
254    Node { op: Op::Keyword, flags: 0, a: 19, b: 0, first: 0x0000000002000000 },
255    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
256    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
257    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
258    Node { op: Op::Sequence, flags: 0, a: 151, b: 3, first: 0x0000000000000008 },
259    Node { op: Op::Sequence, flags: 0, a: 154, b: 2, first: 0x0000000002000000 },
260    Node { op: Op::Keyword, flags: 0, a: 21, b: 0, first: 0x0000000008000000 },
261    Node { op: Op::Keyword, flags: 0, a: 22, b: 0, first: 0x0000000000000001 },
262    Node { op: Op::Choice, flags: 0, a: 156, b: 2, first: 0x0000000008000001 },
263    Node { op: Op::Keyword, flags: 0, a: 23, b: 0, first: 0x0000000020000000 },
264    Node { op: Op::Keyword, flags: 0, a: 27, b: 0, first: 0x0000000200000000 },
265    Node { op: Op::Rule, flags: 0, a: 43, b: 232, first: 0x0000002000800000 },
266    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
267    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
268    Node { op: Op::Sequence, flags: 0, a: 158, b: 3, first: 0x0000000000000008 },
269    Node { op: Op::Sequence, flags: 0, a: 161, b: 2, first: 0x0000000200000000 },
270    Node { op: Op::Rule, flags: 0, a: 47, b: 247, first: 0x0000002000800000 },
271    Node { op: Op::Symbol, flags: 0, a: 43, b: 0, first: 0x0000000000000008 },
272    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
273    Node { op: Op::Sequence, flags: 0, a: 163, b: 3, first: 0x0000002000800000 },
274    Node { op: Op::Rule, flags: 0, a: 696, b: 3102, first: 0xffffffffffffffcf },
275    Node { op: Op::Rule, flags: 0, a: 45, b: 240, first: 0x0000000200000000 },
276    Node { op: Op::Repeat, flags: 0, a: 234, b: 0, first: 0x0000000200000000 },
277    Node { op: Op::Optional, flags: 2, a: 235, b: 0, first: 0x0000000200000000 },
278    Node { op: Op::Sequence, flags: 0, a: 166, b: 2, first: 0xffffffffffffffcf },
279    Node { op: Op::Rule, flags: 0, a: 46, b: 244, first: 0x0000000200000000 },
280    Node { op: Op::Rule, flags: 0, a: 696, b: 3102, first: 0xffffffffffffffcf },
281    Node { op: Op::Sequence, flags: 0, a: 168, b: 2, first: 0x0000000200000000 },
282    Node { op: Op::Keyword, flags: 0, a: 27, b: 0, first: 0x0000000200000000 },
283    Node { op: Op::Keyword, flags: 0, a: 436, b: 0, first: 0x0000001000000000 },
284    Node { op: Op::Keyword, flags: 0, a: 513, b: 0, first: 0x0080000000000000 },
285    Node { op: Op::Sequence, flags: 0, a: 170, b: 3, first: 0x0000000200000000 },
286    Node { op: Op::Rule, flags: 0, a: 1049, b: 4564, first: 0x0000000000800000 },
287    Node { op: Op::Rule, flags: 0, a: 954, b: 4129, first: 0x0000002000000000 },
288    Node { op: Op::Choice, flags: 0, a: 173, b: 2, first: 0x0000002000800000 },
289    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
290    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
291    Node { op: Op::Sequence, flags: 0, a: 175, b: 2, first: 0x0000000004000000 },
292    Node { op: Op::Rule, flags: 0, a: 397, b: 1837, first: 0x0000000000000008 },
293    Node { op: Op::Keyword, flags: 0, a: 28, b: 0, first: 0x0000000400000000 },
294    Node { op: Op::Rule, flags: 0, a: 637, b: 2834, first: 0x0000000000000040 },
295    Node { op: Op::Optional, flags: 2, a: 253, b: 0, first: 0x0000000000000040 },
296    Node { op: Op::Rule, flags: 0, a: 429, b: 1960, first: 0x0000000000004000 },
297    Node { op: Op::Optional, flags: 2, a: 255, b: 0, first: 0x0000000000004000 },
298    Node { op: Op::Rule, flags: 0, a: 214, b: 1045, first: 0x0000004000000000 },
299    Node { op: Op::Optional, flags: 2, a: 257, b: 0, first: 0x0000004000000000 },
300    Node { op: Op::Rule, flags: 0, a: 215, b: 1046, first: 0xffffffffffffffcf },
301    Node { op: Op::Rule, flags: 0, a: 48, b: 250, first: 0x0000000004000000 },
302    Node { op: Op::Optional, flags: 2, a: 260, b: 0, first: 0x0000000004000000 },
303    Node { op: Op::Rule, flags: 0, a: 49, b: 251, first: 0x0000000000000008 },
304    Node { op: Op::Optional, flags: 2, a: 262, b: 0, first: 0x0000000000000008 },
305    Node { op: Op::Sequence, flags: 0, a: 177, b: 7, first: 0x0000000400000000 },
306    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
307    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
308    Node { op: Op::Sequence, flags: 0, a: 184, b: 2, first: 0x0000000000000008 },
309    Node { op: Op::Repeat, flags: 0, a: 267, b: 0, first: 0x0000000000000008 },
310    Node { op: Op::Optional, flags: 2, a: 268, b: 0, first: 0x0000000000000008 },
311    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
312    Node { op: Op::Optional, flags: 2, a: 270, b: 0, first: 0x0000000000000008 },
313    Node { op: Op::Sequence, flags: 0, a: 186, b: 3, first: 0xffffffffffffffc5 },
314    Node { op: Op::Rule, flags: 0, a: 874, b: 3770, first: 0xffffffffffffffcf },
315    Node { op: Op::Rule, flags: 0, a: 444, b: 2016, first: 0x000000000000000a },
316    Node { op: Op::Optional, flags: 2, a: 274, b: 0, first: 0x000000000000000a },
317    Node { op: Op::Sequence, flags: 0, a: 189, b: 2, first: 0xffffffffffffffcf },
318    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
319    Node { op: Op::Rule, flags: 0, a: 1014, b: 4366, first: 0xffffffffffffffc1 },
320    Node { op: Op::Optional, flags: 2, a: 278, b: 0, first: 0xffffffffffffffc1 },
321    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
322    Node { op: Op::Sequence, flags: 0, a: 191, b: 3, first: 0xffffffffffffffc5 },
323    Node { op: Op::Rule, flags: 0, a: 711, b: 3164, first: 0xffffffffffffffc1 },
324    Node { op: Op::Rule, flags: 0, a: 1011, b: 4357, first: 0xffffffffffffffc5 },
325    Node { op: Op::Choice, flags: 0, a: 194, b: 2, first: 0xffffffffffffffc5 },
326    Node { op: Op::Rule, flags: 0, a: 923, b: 3992, first: 0xffffffffffffffc5 },
327    Node { op: Op::Optional, flags: 2, a: 285, b: 0, first: 0xffffffffffffffc5 },
328    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
329    Node { op: Op::Rule, flags: 0, a: 921, b: 3984, first: 0xffffffffffffffc1 },
330    Node { op: Op::Optional, flags: 2, a: 288, b: 0, first: 0xffffffffffffffc1 },
331    Node { op: Op::Rule, flags: 0, a: 42, b: 228, first: 0x0000000200000000 },
332    Node { op: Op::Optional, flags: 2, a: 290, b: 0, first: 0x0000000200000000 },
333    Node { op: Op::Rule, flags: 0, a: 780, b: 3418, first: 0x0000000008000200 },
334    Node { op: Op::Optional, flags: 2, a: 292, b: 0, first: 0x0000000008000200 },
335    Node { op: Op::Sequence, flags: 0, a: 196, b: 5, first: 0xffffffffffffffc5 },
336    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
337    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
338    Node { op: Op::Sequence, flags: 0, a: 201, b: 2, first: 0xffffffffffffffc5 },
339    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
340    Node { op: Op::Rule, flags: 0, a: 895, b: 3869, first: 0x0000008000000200 },
341    Node { op: Op::Rule, flags: 0, a: 963, b: 4162, first: 0x0000012000000000 },
342    Node { op: Op::Optional, flags: 2, a: 300, b: 0, first: 0x0000012000000000 },
343    Node { op: Op::Rule, flags: 0, a: 720, b: 3190, first: 0x0080000000000000 },
344    Node { op: Op::Optional, flags: 2, a: 302, b: 0, first: 0x0080000000000000 },
345    Node { op: Op::Sequence, flags: 0, a: 203, b: 3, first: 0x0000008000000200 },
346    Node { op: Op::Keyword, flags: 0, a: 34, b: 0, first: 0x0000010000000000 },
347    Node { op: Op::Rule, flags: 0, a: 645, b: 2874, first: 0xffffffffffffffcf },
348    Node { op: Op::Keyword, flags: 0, a: 15, b: 0, first: 0x0000000000200000 },
349    Node { op: Op::Rule, flags: 0, a: 645, b: 2874, first: 0xffffffffffffffcf },
350    Node { op: Op::Sequence, flags: 0, a: 206, b: 4, first: 0x0000010000000000 },
351    Node { op: Op::Keyword, flags: 0, a: 34, b: 0, first: 0x0000010000000000 },
352    Node { op: Op::Rule, flags: 0, a: 363, b: 1701, first: 0xffffffffffffffcf },
353    Node { op: Op::Keyword, flags: 0, a: 15, b: 0, first: 0x0000000000200000 },
354    Node { op: Op::Rule, flags: 0, a: 363, b: 1701, first: 0xffffffffffffffcf },
355    Node { op: Op::Sequence, flags: 0, a: 210, b: 4, first: 0x0000010000000000 },
356    Node { op: Op::Rule, flags: 0, a: 645, b: 2874, first: 0xffffffffffffffcf },
357    Node { op: Op::Rule, flags: 0, a: 62, b: 322, first: 0x2280110000210008 },
358    Node { op: Op::Optional, flags: 2, a: 316, b: 0, first: 0x2280110000210008 },
359    Node { op: Op::Sequence, flags: 0, a: 214, b: 2, first: 0xffffffffffffffcf },
360    Node { op: Op::Keyword, flags: 0, a: 270, b: 0, first: 0x0000100000000000 },
361    Node { op: Op::Optional, flags: 2, a: 319, b: 0, first: 0x0000100000000000 },
362    Node { op: Op::Rule, flags: 0, a: 63, b: 326, first: 0x2280010000210008 },
363    Node { op: Op::Sequence, flags: 0, a: 216, b: 2, first: 0x2280110000210008 },
364    Node { op: Op::Rule, flags: 0, a: 59, b: 309, first: 0x0000010000000000 },
365    Node { op: Op::Rule, flags: 0, a: 433, b: 1973, first: 0x0000000000200000 },
366    Node { op: Op::Rule, flags: 0, a: 507, b: 2328, first: 0x2280000000010008 },
367    Node { op: Op::Choice, flags: 0, a: 218, b: 3, first: 0x2280010000210008 },
368    Node { op: Op::Keyword, flags: 0, a: 35, b: 0, first: 0x0000020000000000 },
369    Node { op: Op::Keyword, flags: 0, a: 36, b: 0, first: 0x0000040000000000 },
370    Node { op: Op::Symbol, flags: 0, a: 37, b: 0, first: 0x0000000000000008 },
371    Node { op: Op::Symbol, flags: 0, a: 38, b: 0, first: 0x0000000000000008 },
372    Node { op: Op::Symbol, flags: 0, a: 22, b: 0, first: 0x0000000000000008 },
373    Node { op: Op::Symbol, flags: 0, a: 23, b: 0, first: 0x0000000000000008 },
374    Node { op: Op::Choice, flags: 0, a: 221, b: 4, first: 0x0000000000000008 },
375    Node { op: Op::Keyword, flags: 0, a: 37, b: 0, first: 0x0000080000000000 },
376    Node { op: Op::Keyword, flags: 0, a: 479, b: 0, first: 0x0000000000200000 },
377    Node { op: Op::Optional, flags: 2, a: 335, b: 0, first: 0x0000000000200000 },
378    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
379    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
380    Node { op: Op::Sequence, flags: 0, a: 225, b: 2, first: 0x0000000000000008 },
381    Node { op: Op::Repeat, flags: 0, a: 339, b: 0, first: 0x0000000000000008 },
382    Node { op: Op::Optional, flags: 2, a: 340, b: 0, first: 0x0000000000000008 },
383    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
384    Node { op: Op::Optional, flags: 2, a: 342, b: 0, first: 0x0000000000000008 },
385    Node { op: Op::Sequence, flags: 0, a: 227, b: 3, first: 0xffffffffffffffcf },
386    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
387    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
388    Node { op: Op::Sequence, flags: 0, a: 230, b: 3, first: 0x0000000000000008 },
389    Node { op: Op::Optional, flags: 2, a: 347, b: 0, first: 0x0000000000000008 },
390    Node { op: Op::Sequence, flags: 0, a: 233, b: 3, first: 0x0000080000000000 },
391    Node { op: Op::Rule, flags: 0, a: 6, b: 33, first: 0xffffffffffffffcf },
392    Node { op: Op::Rule, flags: 0, a: 69, b: 357, first: 0x0000000000000008 },
393    Node { op: Op::Repeat, flags: 0, a: 351, b: 0, first: 0x0000000000000008 },
394    Node { op: Op::Optional, flags: 2, a: 352, b: 0, first: 0x0000000000000008 },
395    Node { op: Op::Sequence, flags: 0, a: 236, b: 2, first: 0xffffffffffffffcf },
396    Node { op: Op::Rule, flags: 0, a: 66, b: 333, first: 0x0000000000000008 },
397    Node { op: Op::Rule, flags: 0, a: 6, b: 33, first: 0xffffffffffffffcf },
398    Node { op: Op::Sequence, flags: 0, a: 238, b: 2, first: 0x0000000000000008 },
399    Node { op: Op::Keyword, flags: 0, a: 38, b: 0, first: 0x0000100000000000 },
400    Node { op: Op::Symbol, flags: 0, a: 44, b: 0, first: 0x0000000000000008 },
401    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
402    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
403    Node { op: Op::Sequence, flags: 0, a: 240, b: 2, first: 0x0000000000000008 },
404    Node { op: Op::Repeat, flags: 0, a: 362, b: 0, first: 0x0000000000000008 },
405    Node { op: Op::Optional, flags: 2, a: 363, b: 0, first: 0x0000000000000008 },
406    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
407    Node { op: Op::Optional, flags: 2, a: 365, b: 0, first: 0x0000000000000008 },
408    Node { op: Op::Sequence, flags: 0, a: 242, b: 3, first: 0xffffffffffffffcf },
409    Node { op: Op::Optional, flags: 2, a: 367, b: 0, first: 0xffffffffffffffcf },
410    Node { op: Op::Symbol, flags: 0, a: 45, b: 0, first: 0x0000000000000008 },
411    Node { op: Op::Sequence, flags: 0, a: 245, b: 3, first: 0x0000000000000008 },
412    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
413    Node { op: Op::Keyword, flags: 0, a: 260, b: 0, first: 0x0000000400000000 },
414    Node { op: Op::Sequence, flags: 0, a: 248, b: 2, first: 0x0000400000000000 },
415    Node { op: Op::Rule, flags: 0, a: 451, b: 2038, first: 0x0000400000000000 },
416    Node { op: Op::Rule, flags: 0, a: 453, b: 2042, first: 0x0000400000000000 },
417    Node { op: Op::Choice, flags: 0, a: 250, b: 2, first: 0x0000400000000000 },
418    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
419    Node { op: Op::Keyword, flags: 0, a: 405, b: 0, first: 0x8000000000000000 },
420    Node { op: Op::Sequence, flags: 0, a: 252, b: 2, first: 0x0000400000000000 },
421    Node { op: Op::Rule, flags: 0, a: 74, b: 379, first: 0x0000400000000000 },
422    Node { op: Op::Rule, flags: 0, a: 76, b: 385, first: 0x0000400000000000 },
423    Node { op: Op::Choice, flags: 0, a: 254, b: 2, first: 0x0000400000000000 },
424    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
425    Node { op: Op::Keyword, flags: 0, a: 429, b: 0, first: 0x0000000020000000 },
426    Node { op: Op::Sequence, flags: 0, a: 256, b: 2, first: 0x0000400000000000 },
427    Node { op: Op::Rule, flags: 0, a: 79, b: 396, first: 0x0000000000000008 },
428    Node { op: Op::Rule, flags: 0, a: 78, b: 392, first: 0x0000000000000008 },
429    Node { op: Op::Choice, flags: 0, a: 258, b: 2, first: 0x0000000000000008 },
430    Node { op: Op::Rule, flags: 0, a: 896, b: 3906, first: 0xffffffffffffffcf },
431    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
432    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
433    Node { op: Op::Sequence, flags: 0, a: 260, b: 3, first: 0x0000000000000008 },
434    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
435    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
436    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
437    Node { op: Op::Sequence, flags: 0, a: 263, b: 3, first: 0x0000000000000008 },
438    Node { op: Op::Keyword, flags: 0, a: 42, b: 0, first: 0x0001000000000000 },
439    Node { op: Op::Rule, flags: 0, a: 710, b: 3161, first: 0xffffffffffffffc1 },
440    Node { op: Op::Rule, flags: 0, a: 927, b: 4019, first: 0x0000000000000008 },
441    Node { op: Op::Sequence, flags: 0, a: 266, b: 3, first: 0x0001000000000000 },
442    Node { op: Op::Keyword, flags: 0, a: 44, b: 0, first: 0x0004000000000000 },
443    Node { op: Op::Keyword, flags: 0, a: 44, b: 0, first: 0x0004000000000000 },
444    Node { op: Op::Keyword, flags: 0, a: 126, b: 0, first: 0x0000000000010000 },
445    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
446    Node { op: Op::Sequence, flags: 0, a: 269, b: 2, first: 0x0000000000010000 },
447    Node { op: Op::Keyword, flags: 0, a: 46, b: 0, first: 0x0010000000000000 },
448    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
449    Node { op: Op::Optional, flags: 2, a: 407, b: 0, first: 0xffffffffffffffcf },
450    Node { op: Op::Rule, flags: 0, a: 85, b: 419, first: 0x0000000040000000 },
451    Node { op: Op::Repeat, flags: 0, a: 409, b: 0, first: 0x0000000040000000 },
452    Node { op: Op::Rule, flags: 0, a: 83, b: 405, first: 0x0000000000010000 },
453    Node { op: Op::Optional, flags: 2, a: 411, b: 0, first: 0x0000000000010000 },
454    Node { op: Op::Keyword, flags: 0, a: 130, b: 0, first: 0x0000000000100000 },
455    Node { op: Op::Sequence, flags: 0, a: 271, b: 5, first: 0x0010000000000000 },
456    Node { op: Op::Keyword, flags: 0, a: 488, b: 0, first: 0x0000000040000000 },
457    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
458    Node { op: Op::Keyword, flags: 0, a: 434, b: 0, first: 0x0000000400000000 },
459    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
460    Node { op: Op::Sequence, flags: 0, a: 276, b: 4, first: 0x0000000040000000 },
461    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
462    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
463    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
464    Node { op: Op::Sequence, flags: 0, a: 280, b: 3, first: 0xffffffffffffffcf },
465    Node { op: Op::Rule, flags: 0, a: 90, b: 436, first: 0x0022000000000000 },
466    Node { op: Op::Rule, flags: 0, a: 86, b: 423, first: 0xffffffffffffffcf },
467    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
468    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
469    Node { op: Op::Sequence, flags: 0, a: 283, b: 3, first: 0x0000000000000008 },
470    Node { op: Op::Sequence, flags: 0, a: 286, b: 2, first: 0x0022000000000000 },
471    Node { op: Op::Keyword, flags: 0, a: 47, b: 0, first: 0x0020000000000000 },
472    Node { op: Op::Symbol, flags: 0, a: 46, b: 0, first: 0x0000000000000008 },
473    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
474    Node { op: Op::Sequence, flags: 0, a: 288, b: 2, first: 0x0000000000000008 },
475    Node { op: Op::Rule, flags: 0, a: 88, b: 430, first: 0x0020000000000000 },
476    Node { op: Op::Rule, flags: 0, a: 986, b: 4238, first: 0x0002000000000000 },
477    Node { op: Op::Choice, flags: 0, a: 290, b: 2, first: 0x0022000000000000 },
478    Node { op: Op::Identifier, flags: 0, a: Suggestion::CatalogName as u32, b: 0, first: 0xffffffffffffffc1 },
479    Node { op: Op::Rule, flags: 0, a: 91, b: 437, first: 0xffffffffffffffc1 },
480    Node { op: Op::Rule, flags: 0, a: 91, b: 437, first: 0xffffffffffffffc1 },
481    Node { op: Op::Symbol, flags: 0, a: 47, b: 0, first: 0x000000000000000a },
482    Node { op: Op::Sequence, flags: 0, a: 292, b: 2, first: 0xffffffffffffffc1 },
483    Node { op: Op::Rule, flags: 0, a: 93, b: 441, first: 0xffffffffffffffc1 },
484    Node { op: Op::Rule, flags: 0, a: 759, b: 3347, first: 0xffffffffffffffc1 },
485    Node { op: Op::Repeat, flags: 0, a: 443, b: 0, first: 0xffffffffffffffc1 },
486    Node { op: Op::Optional, flags: 2, a: 444, b: 0, first: 0xffffffffffffffc1 },
487    Node { op: Op::Rule, flags: 0, a: 753, b: 3337, first: 0xffffffffffffffc1 },
488    Node { op: Op::Sequence, flags: 0, a: 294, b: 3, first: 0xffffffffffffffc1 },
489    Node { op: Op::Rule, flags: 0, a: 93, b: 441, first: 0xffffffffffffffc1 },
490    Node { op: Op::Rule, flags: 0, a: 759, b: 3347, first: 0xffffffffffffffc1 },
491    Node { op: Op::Repeat, flags: 0, a: 449, b: 0, first: 0xffffffffffffffc1 },
492    Node { op: Op::Rule, flags: 0, a: 755, b: 3341, first: 0xffffffffffffffc5 },
493    Node { op: Op::Sequence, flags: 0, a: 297, b: 3, first: 0xffffffffffffffc1 },
494    Node { op: Op::Rule, flags: 0, a: 93, b: 441, first: 0xffffffffffffffc1 },
495    Node { op: Op::Rule, flags: 0, a: 759, b: 3347, first: 0xffffffffffffffc1 },
496    Node { op: Op::Rule, flags: 0, a: 756, b: 3342, first: 0xffffffffffffffc1 },
497    Node { op: Op::Sequence, flags: 0, a: 300, b: 3, first: 0xffffffffffffffc1 },
498    Node { op: Op::Rule, flags: 0, a: 93, b: 441, first: 0xffffffffffffffc1 },
499    Node { op: Op::Rule, flags: 0, a: 759, b: 3347, first: 0xffffffffffffffc1 },
500    Node { op: Op::Repeat, flags: 0, a: 458, b: 0, first: 0xffffffffffffffc1 },
501    Node { op: Op::Rule, flags: 0, a: 760, b: 3348, first: 0xffffffffffffffc5 },
502    Node { op: Op::Sequence, flags: 0, a: 303, b: 3, first: 0xffffffffffffffc1 },
503    Node { op: Op::Rule, flags: 0, a: 93, b: 441, first: 0xffffffffffffffc1 },
504    Node { op: Op::Rule, flags: 0, a: 759, b: 3347, first: 0xffffffffffffffc1 },
505    Node { op: Op::Rule, flags: 0, a: 761, b: 3351, first: 0xffffffffffffffc5 },
506    Node { op: Op::Rule, flags: 0, a: 752, b: 3336, first: 0xffffffffffffffc1 },
507    Node { op: Op::Sequence, flags: 0, a: 306, b: 4, first: 0xffffffffffffffc1 },
508    Node { op: Op::Rule, flags: 0, a: 93, b: 441, first: 0xffffffffffffffc1 },
509    Node { op: Op::Rule, flags: 0, a: 759, b: 3347, first: 0xffffffffffffffc1 },
510    Node { op: Op::Repeat, flags: 0, a: 468, b: 0, first: 0xffffffffffffffc1 },
511    Node { op: Op::Rule, flags: 0, a: 762, b: 3352, first: 0xffffffffffffffc1 },
512    Node { op: Op::Sequence, flags: 0, a: 310, b: 3, first: 0xffffffffffffffc1 },
513    Node { op: Op::Rule, flags: 0, a: 91, b: 437, first: 0xffffffffffffffc1 },
514    Node { op: Op::Keyword, flags: 0, a: 50, b: 0, first: 0x0100000000000000 },
515    Node { op: Op::Keyword, flags: 0, a: 49, b: 0, first: 0x0080000000000000 },
516    Node { op: Op::Choice, flags: 0, a: 313, b: 2, first: 0x0180000000000000 },
517    Node { op: Op::Rule, flags: 0, a: 280, b: 1315, first: 0x0004000000004000 },
518    Node { op: Op::Keyword, flags: 0, a: 270, b: 0, first: 0x0000100000000000 },
519    Node { op: Op::Keyword, flags: 0, a: 275, b: 0, first: 0x0002000000000000 },
520    Node { op: Op::Sequence, flags: 0, a: 315, b: 3, first: 0x0004000000004000 },
521    Node { op: Op::Rule, flags: 0, a: 104, b: 507, first: 0x0c00005000010000 },
522    Node { op: Op::Rule, flags: 0, a: 994, b: 4295, first: 0x0000000000000008 },
523    Node { op: Op::Optional, flags: 2, a: 481, b: 0, first: 0x0000000000000008 },
524    Node { op: Op::Sequence, flags: 0, a: 318, b: 2, first: 0x0c00005000010000 },
525    Node { op: Op::Keyword, flags: 0, a: 53, b: 0, first: 0x0800000000000000 },
526    Node { op: Op::Keyword, flags: 0, a: 479, b: 0, first: 0x0000000000200000 },
527    Node { op: Op::Optional, flags: 2, a: 485, b: 0, first: 0x0000000000200000 },
528    Node { op: Op::Sequence, flags: 0, a: 320, b: 2, first: 0x0800000000000000 },
529    Node { op: Op::Keyword, flags: 0, a: 52, b: 0, first: 0x0400000000000000 },
530    Node { op: Op::Keyword, flags: 0, a: 479, b: 0, first: 0x0000000000200000 },
531    Node { op: Op::Optional, flags: 2, a: 489, b: 0, first: 0x0000000000200000 },
532    Node { op: Op::Sequence, flags: 0, a: 322, b: 2, first: 0x0400000000000000 },
533    Node { op: Op::Keyword, flags: 0, a: 262, b: 0, first: 0x0000001000000000 },
534    Node { op: Op::Keyword, flags: 0, a: 53, b: 0, first: 0x0800000000000000 },
535    Node { op: Op::Keyword, flags: 0, a: 479, b: 0, first: 0x0000000000200000 },
536    Node { op: Op::Optional, flags: 2, a: 494, b: 0, first: 0x0000000000200000 },
537    Node { op: Op::Sequence, flags: 0, a: 324, b: 3, first: 0x0000001000000000 },
538    Node { op: Op::Keyword, flags: 0, a: 262, b: 0, first: 0x0000001000000000 },
539    Node { op: Op::Keyword, flags: 0, a: 52, b: 0, first: 0x0400000000000000 },
540    Node { op: Op::Keyword, flags: 0, a: 479, b: 0, first: 0x0000000000200000 },
541    Node { op: Op::Optional, flags: 2, a: 499, b: 0, first: 0x0000000000200000 },
542    Node { op: Op::Sequence, flags: 0, a: 327, b: 3, first: 0x0000001000000000 },
543    Node { op: Op::Keyword, flags: 0, a: 264, b: 0, first: 0x0000004000000000 },
544    Node { op: Op::Keyword, flags: 0, a: 479, b: 0, first: 0x0000000000200000 },
545    Node { op: Op::Optional, flags: 2, a: 503, b: 0, first: 0x0000000000200000 },
546    Node { op: Op::Sequence, flags: 0, a: 330, b: 2, first: 0x0000004000000000 },
547    Node { op: Op::Keyword, flags: 0, a: 474, b: 0, first: 0x0000000000010000 },
548    Node { op: Op::Choice, flags: 0, a: 332, b: 6, first: 0x0c00005000010000 },
549    Node { op: Op::Keyword, flags: 0, a: 55, b: 0, first: 0x2000000000000000 },
550    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
551    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
552    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
553    Node { op: Op::Sequence, flags: 0, a: 338, b: 3, first: 0x0000000000000008 },
554    Node { op: Op::Sequence, flags: 0, a: 341, b: 2, first: 0x2000000000000000 },
555    Node { op: Op::Keyword, flags: 0, a: 157, b: 0, first: 0x0000800000000000 },
556    Node { op: Op::Rule, flags: 0, a: 106, b: 514, first: 0x0000800000000000 },
557    Node { op: Op::Optional, flags: 2, a: 515, b: 0, first: 0x0000800000000000 },
558    Node { op: Op::Keyword, flags: 0, a: 56, b: 0, first: 0x4000000000000000 },
559    Node { op: Op::Rule, flags: 0, a: 91, b: 437, first: 0xffffffffffffffc1 },
560    Node { op: Op::Optional, flags: 2, a: 518, b: 0, first: 0xffffffffffffffc1 },
561    Node { op: Op::Sequence, flags: 0, a: 343, b: 3, first: 0x4000800000000000 },
562    Node { op: Op::Keyword, flags: 0, a: 60, b: 0, first: 0x0000000000000100 },
563    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
564    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
565    Node { op: Op::Sequence, flags: 0, a: 346, b: 2, first: 0x0000000000000008 },
566    Node { op: Op::Repeat, flags: 0, a: 524, b: 0, first: 0x0000000000000008 },
567    Node { op: Op::Optional, flags: 2, a: 525, b: 0, first: 0x0000000000000008 },
568    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
569    Node { op: Op::Optional, flags: 2, a: 527, b: 0, first: 0x0000000000000008 },
570    Node { op: Op::Sequence, flags: 0, a: 348, b: 3, first: 0xffffffffffffffcf },
571    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
572    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
573    Node { op: Op::Sequence, flags: 0, a: 351, b: 3, first: 0x0000000000000008 },
574    Node { op: Op::Sequence, flags: 0, a: 354, b: 2, first: 0x0000000000000100 },
575    Node { op: Op::Rule, flags: 0, a: 484, b: 2221, first: 0xffffffffffffffcf },
576    Node { op: Op::Rule, flags: 0, a: 110, b: 541, first: 0x0000000000200000 },
577    Node { op: Op::Repeat, flags: 0, a: 535, b: 0, first: 0x0000000000200000 },
578    Node { op: Op::Optional, flags: 2, a: 536, b: 0, first: 0x0000000000200000 },
579    Node { op: Op::Sequence, flags: 0, a: 356, b: 2, first: 0xffffffffffffffcf },
580    Node { op: Op::Keyword, flags: 0, a: 15, b: 0, first: 0x0000000000200000 },
581    Node { op: Op::Rule, flags: 0, a: 484, b: 2221, first: 0xffffffffffffffcf },
582    Node { op: Op::Sequence, flags: 0, a: 358, b: 2, first: 0x0000000000200000 },
583    Node { op: Op::Rule, flags: 0, a: 109, b: 538, first: 0xffffffffffffffcf },
584    Node { op: Op::Rule, flags: 0, a: 112, b: 549, first: 0x0000000000000040 },
585    Node { op: Op::Repeat, flags: 0, a: 543, b: 0, first: 0x0000000000000040 },
586    Node { op: Op::Optional, flags: 2, a: 544, b: 0, first: 0x0000000000000040 },
587    Node { op: Op::Sequence, flags: 0, a: 360, b: 2, first: 0xffffffffffffffcf },
588    Node { op: Op::Keyword, flags: 0, a: 290, b: 0, first: 0x0000000000000040 },
589    Node { op: Op::Rule, flags: 0, a: 109, b: 538, first: 0xffffffffffffffcf },
590    Node { op: Op::Sequence, flags: 0, a: 362, b: 2, first: 0x0000000000000040 },
591    Node { op: Op::Rule, flags: 0, a: 1012, b: 4358, first: 0xffffffffffffffc0 },
592    Node { op: Op::Rule, flags: 0, a: 136, b: 661, first: 0xcd9ffff39015f500 },
593    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
594    Node { op: Op::Choice, flags: 0, a: 364, b: 3, first: 0xffffffffffffffc1 },
595    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
596    Node { op: Op::Symbol, flags: 0, a: 47, b: 0, first: 0x000000000000000a },
597    Node { op: Op::Sequence, flags: 0, a: 367, b: 2, first: 0xffffffffffffffc1 },
598    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
599    Node { op: Op::Symbol, flags: 0, a: 48, b: 0, first: 0x0000000000000008 },
600    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
601    Node { op: Op::Sequence, flags: 0, a: 369, b: 3, first: 0xffffffffffffffc1 },
602    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
603    Node { op: Op::Rule, flags: 0, a: 900, b: 3913, first: 0x0000000000000004 },
604    Node { op: Op::Choice, flags: 0, a: 372, b: 2, first: 0xffffffffffffffc5 },
605    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
606    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
607    Node { op: Op::Sequence, flags: 0, a: 374, b: 2, first: 0xffffffffffffffc1 },
608    Node { op: Op::Rule, flags: 0, a: 117, b: 566, first: 0xffffffffffffffc1 },
609    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
610    Node { op: Op::Sequence, flags: 0, a: 376, b: 2, first: 0x0000000000000008 },
611    Node { op: Op::Repeat, flags: 0, a: 569, b: 0, first: 0x0000000000000008 },
612    Node { op: Op::Optional, flags: 2, a: 570, b: 0, first: 0x0000000000000008 },
613    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
614    Node { op: Op::Optional, flags: 2, a: 572, b: 0, first: 0x0000000000000008 },
615    Node { op: Op::Sequence, flags: 0, a: 378, b: 3, first: 0xffffffffffffffc1 },
616    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
617    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
618    Node { op: Op::Sequence, flags: 0, a: 381, b: 3, first: 0x0000000000000008 },
619    Node { op: Op::Rule, flags: 0, a: 757, b: 3343, first: 0xffffffffffffffc1 },
620    Node { op: Op::Rule, flags: 0, a: 1012, b: 4358, first: 0xffffffffffffffc0 },
621    Node { op: Op::Rule, flags: 0, a: 136, b: 661, first: 0xcd9ffff39015f500 },
622    Node { op: Op::Rule, flags: 0, a: 379, b: 1757, first: 0x2a94b436a9452c00 },
623    Node { op: Op::Rule, flags: 0, a: 997, b: 4298, first: 0x2a96f436a9453c00 },
624    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
625    Node { op: Op::Choice, flags: 0, a: 384, b: 6, first: 0xffffffffffffffc1 },
626    Node { op: Op::Rule, flags: 0, a: 119, b: 584, first: 0xffffffffffffffc1 },
627    Node { op: Op::Rule, flags: 0, a: 120, b: 585, first: 0xffffffffffffffc1 },
628    Node { op: Op::Rule, flags: 0, a: 900, b: 3913, first: 0x0000000000000004 },
629    Node { op: Op::Choice, flags: 0, a: 390, b: 2, first: 0xffffffffffffffc5 },
630    Node { op: Op::Symbol, flags: 0, a: 49, b: 0, first: 0x0000000000000008 },
631    Node { op: Op::Rule, flags: 0, a: 119, b: 584, first: 0xffffffffffffffc1 },
632    Node { op: Op::Sequence, flags: 0, a: 392, b: 2, first: 0x0000000000000008 },
633    Node { op: Op::Rule, flags: 0, a: 44, b: 237, first: 0xffffffffffffffcf },
634    Node { op: Op::Rule, flags: 0, a: 124, b: 599, first: 0x0000000000000200 },
635    Node { op: Op::Repeat, flags: 0, a: 593, b: 0, first: 0x0000000000000200 },
636    Node { op: Op::Optional, flags: 2, a: 594, b: 0, first: 0x0000000000000200 },
637    Node { op: Op::Sequence, flags: 0, a: 394, b: 2, first: 0xffffffffffffffcf },
638    Node { op: Op::Rule, flags: 0, a: 125, b: 600, first: 0x0000000000000200 },
639    Node { op: Op::Rule, flags: 0, a: 44, b: 237, first: 0xffffffffffffffcf },
640    Node { op: Op::Sequence, flags: 0, a: 396, b: 2, first: 0x0000000000000200 },
641    Node { op: Op::Keyword, flags: 0, a: 61, b: 0, first: 0x0000000000000200 },
642    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
643    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
644    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
645    Node { op: Op::Sequence, flags: 0, a: 398, b: 2, first: 0x0000000000000008 },
646    Node { op: Op::Repeat, flags: 0, a: 604, b: 0, first: 0x0000000000000008 },
647    Node { op: Op::Optional, flags: 2, a: 605, b: 0, first: 0x0000000000000008 },
648    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
649    Node { op: Op::Optional, flags: 2, a: 607, b: 0, first: 0x0000000000000008 },
650    Node { op: Op::Sequence, flags: 0, a: 400, b: 3, first: 0xffffffffffffffc5 },
651    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
652    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
653    Node { op: Op::Sequence, flags: 0, a: 403, b: 3, first: 0x0000000000000008 },
654    Node { op: Op::Keyword, flags: 0, a: 61, b: 0, first: 0x0000000000000200 },
655    Node { op: Op::Rule, flags: 0, a: 267, b: 1230, first: 0xffffffffffffffc1 },
656    Node { op: Op::Sequence, flags: 0, a: 406, b: 2, first: 0x0000000000000200 },
657    Node { op: Op::Keyword, flags: 0, a: 467, b: 0, first: 0x0000000000000200 },
658    Node { op: Op::Keyword, flags: 0, a: 69, b: 0, first: 0x0000000000020000 },
659    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
660    Node { op: Op::Sequence, flags: 0, a: 408, b: 3, first: 0x0000000000000200 },
661    Node { op: Op::Rule, flags: 0, a: 592, b: 2713, first: 0x0002100000000000 },
662    Node { op: Op::Rule, flags: 0, a: 1000, b: 4315, first: 0x0200000000000000 },
663    Node { op: Op::Rule, flags: 0, a: 701, b: 3121, first: 0x0000040000000000 },
664    Node { op: Op::Rule, flags: 0, a: 231, b: 1097, first: 0x0001000000000000 },
665    Node { op: Op::Rule, flags: 0, a: 105, b: 513, first: 0x2000000000000000 },
666    Node { op: Op::Rule, flags: 0, a: 362, b: 1697, first: 0x2000000000000000 },
667    Node { op: Op::Rule, flags: 0, a: 128, b: 615, first: 0x0000000000000200 },
668    Node { op: Op::Rule, flags: 0, a: 129, b: 619, first: 0x0000000000000200 },
669    Node { op: Op::Choice, flags: 0, a: 411, b: 8, first: 0x2203140000000200 },
670    Node { op: Op::Rule, flags: 0, a: 111, b: 546, first: 0xffffffffffffffcf },
671    Node { op: Op::Rule, flags: 0, a: 267, b: 1230, first: 0xffffffffffffffc1 },
672    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
673    Node { op: Op::Optional, flags: 2, a: 631, b: 0, first: 0xffffffffffffffc1 },
674    Node { op: Op::Rule, flags: 0, a: 393, b: 1818, first: 0x0080000004000000 },
675    Node { op: Op::Optional, flags: 2, a: 633, b: 0, first: 0x0080000004000000 },
676    Node { op: Op::Rule, flags: 0, a: 162, b: 751, first: 0x0000000000800000 },
677    Node { op: Op::Optional, flags: 2, a: 635, b: 0, first: 0x0000000000800000 },
678    Node { op: Op::Rule, flags: 0, a: 130, b: 628, first: 0x2203140000000200 },
679    Node { op: Op::Repeat, flags: 0, a: 637, b: 0, first: 0x2203140000000200 },
680    Node { op: Op::Optional, flags: 2, a: 638, b: 0, first: 0x2203140000000200 },
681    Node { op: Op::Sequence, flags: 0, a: 419, b: 5, first: 0xffffffffffffffc1 },
682    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
683    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
684    Node { op: Op::Sequence, flags: 0, a: 424, b: 2, first: 0x0000000000000008 },
685    Node { op: Op::Repeat, flags: 0, a: 643, b: 0, first: 0x0000000000000008 },
686    Node { op: Op::Optional, flags: 2, a: 644, b: 0, first: 0x0000000000000008 },
687    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
688    Node { op: Op::Optional, flags: 2, a: 646, b: 0, first: 0x0000000000000008 },
689    Node { op: Op::Sequence, flags: 0, a: 426, b: 3, first: 0xffffffffffffffc1 },
690    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
691    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
692    Node { op: Op::Sequence, flags: 0, a: 429, b: 3, first: 0x0000000000000008 },
693    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
694    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
695    Node { op: Op::Sequence, flags: 0, a: 432, b: 2, first: 0x0000000000000008 },
696    Node { op: Op::Repeat, flags: 0, a: 654, b: 0, first: 0x0000000000000008 },
697    Node { op: Op::Optional, flags: 2, a: 655, b: 0, first: 0x0000000000000008 },
698    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
699    Node { op: Op::Optional, flags: 2, a: 657, b: 0, first: 0x0000000000000008 },
700    Node { op: Op::Sequence, flags: 0, a: 434, b: 3, first: 0xffffffffffffffc1 },
701    Node { op: Op::Identifier, flags: 0, a: Suggestion::ColumnName as u32, b: 0, first: 0xffffffffffffffc1 },
702    Node { op: Op::KeywordClass, flags: 0, a: 4, b: 0, first: 0xcd9ffff39015f500 },
703    Node { op: Op::Rule, flags: 0, a: 582, b: 2685, first: 0xffffffffffffffc1 },
704    Node { op: Op::Rule, flags: 0, a: 98, b: 466, first: 0xffffffffffffffc1 },
705    Node { op: Op::Rule, flags: 0, a: 801, b: 3484, first: 0xffffffffffffffc1 },
706    Node { op: Op::Rule, flags: 0, a: 937, b: 4063, first: 0xffffffffffffffc5 },
707    Node { op: Op::Rule, flags: 0, a: 581, b: 2678, first: 0xffffffffffffffc1 },
708    Node { op: Op::Choice, flags: 0, a: 437, b: 5, first: 0xffffffffffffffc5 },
709    Node { op: Op::Rule, flags: 0, a: 893, b: 3863, first: 0x0000000000000008 },
710    Node { op: Op::Optional, flags: 2, a: 668, b: 0, first: 0x0000000000000008 },
711    Node { op: Op::Keyword, flags: 0, a: 64, b: 0, first: 0x0000000000001000 },
712    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
713    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
714    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
715    Node { op: Op::Sequence, flags: 0, a: 442, b: 3, first: 0x0000000000000008 },
716    Node { op: Op::Sequence, flags: 0, a: 445, b: 3, first: 0x0000000000001008 },
717    Node { op: Op::Keyword, flags: 0, a: 63, b: 0, first: 0x0000000000000800 },
718    Node { op: Op::Keyword, flags: 0, a: 90, b: 0, first: 0x0000004000000000 },
719    Node { op: Op::Keyword, flags: 0, a: 163, b: 0, first: 0x0020000000000000 },
720    Node { op: Op::Keyword, flags: 0, a: 193, b: 0, first: 0x0000000002000000 },
721    Node { op: Op::Keyword, flags: 0, a: 238, b: 0, first: 0x0000000000001000 },
722    Node { op: Op::Keyword, flags: 0, a: 238, b: 0, first: 0x0000000000001000 },
723    Node { op: Op::Keyword, flags: 0, a: 425, b: 0, first: 0x0000000002000000 },
724    Node { op: Op::Sequence, flags: 0, a: 448, b: 2, first: 0x0000000000001000 },
725    Node { op: Op::Rule, flags: 0, a: 149, b: 705, first: 0x0000000002000000 },
726    Node { op: Op::Rule, flags: 0, a: 147, b: 697, first: 0x0000200000000000 },
727    Node { op: Op::Rule, flags: 0, a: 141, b: 678, first: 0x0020000000000000 },
728    Node { op: Op::Rule, flags: 0, a: 144, b: 683, first: 0x0000000000001000 },
729    Node { op: Op::Rule, flags: 0, a: 143, b: 680, first: 0x0000000000001000 },
730    Node { op: Op::Rule, flags: 0, a: 152, b: 710, first: 0x0000000001000000 },
731    Node { op: Op::Rule, flags: 0, a: 140, b: 677, first: 0x0000004000000000 },
732    Node { op: Op::Rule, flags: 0, a: 142, b: 679, first: 0x0000000002000000 },
733    Node { op: Op::Rule, flags: 0, a: 146, b: 696, first: 0x0000000200000000 },
734    Node { op: Op::Rule, flags: 0, a: 150, b: 706, first: 0x0008000000000000 },
735    Node { op: Op::Rule, flags: 0, a: 139, b: 676, first: 0x0000000000000800 },
736    Node { op: Op::Choice, flags: 0, a: 450, b: 11, first: 0x0028204203001800 },
737    Node { op: Op::Keyword, flags: 0, a: 375, b: 0, first: 0x0000000200000000 },
738    Node { op: Op::Keyword, flags: 0, a: 387, b: 0, first: 0x0000200000000000 },
739    Node { op: Op::Keyword, flags: 0, a: 65, b: 0, first: 0x0000000000002000 },
740    Node { op: Op::Keyword, flags: 0, a: 285, b: 0, first: 0x0800000000000000 },
741    Node { op: Op::Rule, flags: 0, a: 145, b: 695, first: 0x0028204203001800 },
742    Node { op: Op::Rule, flags: 0, a: 267, b: 1230, first: 0xffffffffffffffc1 },
743    Node { op: Op::Keyword, flags: 0, a: 212, b: 0, first: 0x0000100000000000 },
744    Node { op: Op::Rule, flags: 0, a: 151, b: 709, first: 0x0002000000000004 },
745    Node { op: Op::Sequence, flags: 0, a: 461, b: 6, first: 0x0000000000002000 },
746    Node { op: Op::Keyword, flags: 0, a: 425, b: 0, first: 0x0000000002000000 },
747    Node { op: Op::Keyword, flags: 0, a: 451, b: 0, first: 0x0008000000000000 },
748    Node { op: Op::Rule, flags: 0, a: 601, b: 2736, first: 0x0002000000000000 },
749    Node { op: Op::Rule, flags: 0, a: 901, b: 3914, first: 0x0000000000000004 },
750    Node { op: Op::Choice, flags: 0, a: 467, b: 2, first: 0x0002000000000004 },
751    Node { op: Op::Keyword, flags: 0, a: 482, b: 0, first: 0x0000000001000000 },
752    Node { op: Op::Keyword, flags: 0, a: 285, b: 0, first: 0x0800000000000000 },
753    Node { op: Op::Keyword, flags: 0, a: 67, b: 0, first: 0x0000000000008000 },
754    Node { op: Op::Rule, flags: 0, a: 699, b: 3117, first: 0x0020020000000000 },
755    Node { op: Op::Keyword, flags: 0, a: 371, b: 0, first: 0x0000000020000000 },
756    Node { op: Op::Sequence, flags: 0, a: 469, b: 4, first: 0x0800000000000000 },
757    Node { op: Op::Keyword, flags: 0, a: 67, b: 0, first: 0x0000000000008000 },
758    Node { op: Op::Keyword, flags: 0, a: 130, b: 0, first: 0x0000000000100000 },
759    Node { op: Op::Choice, flags: 0, a: 473, b: 2, first: 0x0000000000108000 },
760    Node { op: Op::Rule, flags: 0, a: 154, b: 718, first: 0x0000000000108000 },
761    Node { op: Op::Rule, flags: 0, a: 963, b: 4162, first: 0x0000012000000000 },
762    Node { op: Op::Optional, flags: 2, a: 720, b: 0, first: 0x0000012000000000 },
763    Node { op: Op::Sequence, flags: 0, a: 475, b: 2, first: 0x0000000000108000 },
764    Node { op: Op::Rule, flags: 0, a: 61, b: 318, first: 0xffffffffffffffcf },
765    Node { op: Op::Rule, flags: 0, a: 157, b: 732, first: 0x0000000000000008 },
766    Node { op: Op::Repeat, flags: 0, a: 724, b: 0, first: 0x0000000000000008 },
767    Node { op: Op::Optional, flags: 2, a: 725, b: 0, first: 0x0000000000000008 },
768    Node { op: Op::Sequence, flags: 0, a: 477, b: 2, first: 0xffffffffffffffcf },
769    Node { op: Op::Rule, flags: 0, a: 158, b: 739, first: 0x0000000000000008 },
770    Node { op: Op::Rule, flags: 0, a: 585, b: 2691, first: 0x0000100000000000 },
771    Node { op: Op::Optional, flags: 2, a: 729, b: 0, first: 0x0000100000000000 },
772    Node { op: Op::Rule, flags: 0, a: 61, b: 318, first: 0xffffffffffffffcf },
773    Node { op: Op::Sequence, flags: 0, a: 479, b: 3, first: 0x0000000000000008 },
774    Node { op: Op::Rule, flags: 0, a: 623, b: 2810, first: 0x0000000000000008 },
775    Node { op: Op::Rule, flags: 0, a: 629, b: 2818, first: 0x0000000000000008 },
776    Node { op: Op::Rule, flags: 0, a: 626, b: 2813, first: 0x0000000000000008 },
777    Node { op: Op::Rule, flags: 0, a: 624, b: 2811, first: 0x0000000000000008 },
778    Node { op: Op::Rule, flags: 0, a: 627, b: 2814, first: 0x0000000000000008 },
779    Node { op: Op::Rule, flags: 0, a: 625, b: 2812, first: 0x0000000000000008 },
780    Node { op: Op::Choice, flags: 0, a: 482, b: 6, first: 0x0000000000000008 },
781    Node { op: Op::Keyword, flags: 0, a: 73, b: 0, first: 0x0000000000200000 },
782    Node { op: Op::Rule, flags: 0, a: 830, b: 3581, first: 0xffffffffffffffc5 },
783    Node { op: Op::Optional, flags: 2, a: 741, b: 0, first: 0xffffffffffffffc5 },
784    Node { op: Op::Sequence, flags: 0, a: 488, b: 2, first: 0x0000000000200000 },
785    Node { op: Op::Rule, flags: 0, a: 601, b: 2736, first: 0x0002000000000000 },
786    Node { op: Op::Rule, flags: 0, a: 984, b: 4232, first: 0x0000200000000000 },
787    Node { op: Op::Rule, flags: 0, a: 344, b: 1631, first: 0x0000008000000000 },
788    Node { op: Op::Choice, flags: 0, a: 490, b: 3, first: 0x0002208000000000 },
789    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
790    Node { op: Op::Keyword, flags: 0, a: 75, b: 0, first: 0x0000000000800000 },
791    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
792    Node { op: Op::Sequence, flags: 0, a: 493, b: 2, first: 0x0000000000800000 },
793    Node { op: Op::Keyword, flags: 0, a: 89, b: 0, first: 0x0000002000000000 },
794    Node { op: Op::Rule, flags: 0, a: 795, b: 3465, first: 0x0000002200000000 },
795    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
796    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
797    Node { op: Op::Sequence, flags: 0, a: 495, b: 3, first: 0x0000000000000008 },
798    Node { op: Op::Rule, flags: 0, a: 166, b: 764, first: 0x0000000000000008 },
799    Node { op: Op::Rule, flags: 0, a: 169, b: 767, first: 0x0000000000000004 },
800    Node { op: Op::Rule, flags: 0, a: 167, b: 765, first: 0xffffffffffffffc1 },
801    Node { op: Op::Rule, flags: 0, a: 168, b: 766, first: 0xffffffffffffffc1 },
802    Node { op: Op::Choice, flags: 0, a: 498, b: 4, first: 0xffffffffffffffcd },
803    Node { op: Op::Rule, flags: 0, a: 652, b: 2909, first: 0x0000000000000008 },
804    Node { op: Op::Rule, flags: 0, a: 653, b: 2913, first: 0x0000000000000008 },
805    Node { op: Op::Choice, flags: 0, a: 502, b: 2, first: 0x0000000000000008 },
806    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
807    Node { op: Op::Rule, flags: 0, a: 423, b: 1935, first: 0xffffffffffffffc1 },
808    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
809    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
810    Node { op: Op::Rule, flags: 0, a: 172, b: 778, first: 0x0008000000000000 },
811    Node { op: Op::Rule, flags: 0, a: 173, b: 784, first: 0x0008000000000000 },
812    Node { op: Op::Choice, flags: 0, a: 504, b: 2, first: 0x0008000000000000 },
813    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
814    Node { op: Op::Keyword, flags: 0, a: 90, b: 0, first: 0x0000004000000000 },
815    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
816    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
817    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
818    Node { op: Op::Rule, flags: 0, a: 164, b: 756, first: 0x0000000000000008 },
819    Node { op: Op::Sequence, flags: 0, a: 506, b: 6, first: 0x0008000000000000 },
820    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
821    Node { op: Op::Keyword, flags: 0, a: 90, b: 0, first: 0x0000004000000000 },
822    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
823    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
824    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
825    Node { op: Op::Sequence, flags: 0, a: 512, b: 5, first: 0x0008000000000000 },
826    Node { op: Op::Rule, flags: 0, a: 640, b: 2849, first: 0x0000000000000080 },
827    Node { op: Op::Rule, flags: 0, a: 664, b: 2993, first: 0x0000000000600000 },
828    Node { op: Op::Rule, flags: 0, a: 395, b: 1825, first: 0xffffffffffffffc1 },
829    Node { op: Op::Choice, flags: 0, a: 517, b: 3, first: 0xffffffffffffffc1 },
830    Node { op: Op::Rule, flags: 0, a: 174, b: 788, first: 0xffffffffffffffc1 },
831    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
832    Node { op: Op::Sequence, flags: 0, a: 520, b: 2, first: 0x0000000000000008 },
833    Node { op: Op::Repeat, flags: 0, a: 791, b: 0, first: 0x0000000000000008 },
834    Node { op: Op::Optional, flags: 2, a: 792, b: 0, first: 0x0000000000000008 },
835    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
836    Node { op: Op::Optional, flags: 2, a: 794, b: 0, first: 0x0000000000000008 },
837    Node { op: Op::Sequence, flags: 0, a: 522, b: 3, first: 0xffffffffffffffc1 },
838    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
839    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
840    Node { op: Op::Sequence, flags: 0, a: 525, b: 3, first: 0x0000000000000008 },
841    Node { op: Op::Rule, flags: 0, a: 175, b: 799, first: 0x0000000000000008 },
842    Node { op: Op::Rule, flags: 0, a: 886, b: 3837, first: 0x0266840100e40200 },
843    Node { op: Op::Choice, flags: 0, a: 528, b: 2, first: 0x0266840100e40208 },
844    Node { op: Op::Identifier, flags: 1, a: Suggestion::Variable as u32, b: 0, first: 0xffffffffffffffc1 },
845    Node { op: Op::Keyword, flags: 0, a: 492, b: 0, first: 0x0000000400000000 },
846    Node { op: Op::Optional, flags: 2, a: 804, b: 0, first: 0x0000000400000000 },
847    Node { op: Op::Rule, flags: 0, a: 176, b: 802, first: 0x0266840100e40208 },
848    Node { op: Op::Sequence, flags: 0, a: 530, b: 2, first: 0x0266840500e40208 },
849    Node { op: Op::Keyword, flags: 0, a: 375, b: 0, first: 0x0000000200000000 },
850    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
851    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
852    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
853    Node { op: Op::Sequence, flags: 0, a: 532, b: 3, first: 0x0000000000000008 },
854    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
855    Node { op: Op::Rule, flags: 0, a: 165, b: 761, first: 0xffffffffffffffcd },
856    Node { op: Op::Rule, flags: 0, a: 178, b: 807, first: 0x0266840500e40208 },
857    Node { op: Op::Optional, flags: 2, a: 815, b: 0, first: 0x0266840500e40208 },
858    Node { op: Op::Sequence, flags: 0, a: 535, b: 4, first: 0x0000000000000008 },
859    Node { op: Op::Keyword, flags: 0, a: 80, b: 0, first: 0x0000000010000000 },
860    Node { op: Op::Rule, flags: 0, a: 184, b: 833, first: 0xffffffffffffffcd },
861    Node { op: Op::Sequence, flags: 0, a: 539, b: 2, first: 0x0000000010000000 },
862    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
863    Node { op: Op::Rule, flags: 0, a: 454, b: 2046, first: 0x0000000000000008 },
864    Node { op: Op::Optional, flags: 2, a: 822, b: 0, first: 0x0000000000000008 },
865    Node { op: Op::Rule, flags: 0, a: 373, b: 1739, first: 0x0008004000000000 },
866    Node { op: Op::Rule, flags: 0, a: 165, b: 761, first: 0xffffffffffffffcd },
867    Node { op: Op::Rule, flags: 0, a: 178, b: 807, first: 0x0266840500e40208 },
868    Node { op: Op::Optional, flags: 2, a: 826, b: 0, first: 0x0266840500e40208 },
869    Node { op: Op::Sequence, flags: 0, a: 541, b: 5, first: 0xffffffffffffffc5 },
870    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
871    Node { op: Op::Rule, flags: 0, a: 182, b: 828, first: 0xffffffffffffffc5 },
872    Node { op: Op::Rule, flags: 0, a: 180, b: 817, first: 0x0000000000000008 },
873    Node { op: Op::Rule, flags: 0, a: 171, b: 771, first: 0x0008000000000000 },
874    Node { op: Op::Choice, flags: 0, a: 546, b: 3, first: 0xffffffffffffffcd },
875    Node { op: Op::Rule, flags: 0, a: 200, b: 971, first: 0xffffffffffffffc1 },
876    Node { op: Op::Optional, flags: 2, a: 834, b: 0, first: 0xffffffffffffffc1 },
877    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
878    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
879    Node { op: Op::Sequence, flags: 0, a: 549, b: 3, first: 0x0000000000000008 },
880    Node { op: Op::Rule, flags: 0, a: 663, b: 2986, first: 0x4000000000400000 },
881    Node { op: Op::Optional, flags: 2, a: 839, b: 0, first: 0x4000000000400000 },
882    Node { op: Op::Rule, flags: 0, a: 1068, b: 4654, first: 0x0000000400000000 },
883    Node { op: Op::Optional, flags: 2, a: 841, b: 0, first: 0x0000000400000000 },
884    Node { op: Op::Sequence, flags: 0, a: 552, b: 3, first: 0x0000000000000008 },
885    Node { op: Op::Keyword, flags: 0, a: 82, b: 0, first: 0x0000000040000000 },
886    Node { op: Op::Rule, flags: 0, a: 637, b: 2834, first: 0x0000000000000040 },
887    Node { op: Op::Optional, flags: 2, a: 845, b: 0, first: 0x0000000000000040 },
888    Node { op: Op::Keyword, flags: 0, a: 145, b: 0, first: 0x0000000800000000 },
889    Node { op: Op::Keyword, flags: 0, a: 356, b: 0, first: 0x0000000000000001 },
890    Node { op: Op::Rule, flags: 0, a: 429, b: 1960, first: 0x0000000000004000 },
891    Node { op: Op::Optional, flags: 2, a: 849, b: 0, first: 0x0000000000004000 },
892    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
893    Node { op: Op::Rule, flags: 0, a: 750, b: 3320, first: 0x0000000400000001 },
894    Node { op: Op::Rule, flags: 0, a: 751, b: 3335, first: 0x0000000000000201 },
895    Node { op: Op::Optional, flags: 2, a: 853, b: 0, first: 0x0000000000000201 },
896    Node { op: Op::Sequence, flags: 0, a: 555, b: 8, first: 0x0000000040000000 },
897    Node { op: Op::Keyword, flags: 0, a: 82, b: 0, first: 0x0000000040000000 },
898    Node { op: Op::Keyword, flags: 0, a: 147, b: 0, first: 0x0000002000000000 },
899    Node { op: Op::Keyword, flags: 0, a: 358, b: 0, first: 0x0000000000010000 },
900    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
901    Node { op: Op::Rule, flags: 0, a: 48, b: 250, first: 0x0000000004000000 },
902    Node { op: Op::Optional, flags: 2, a: 860, b: 0, first: 0x0000000004000000 },
903    Node { op: Op::Rule, flags: 0, a: 334, b: 1589, first: 0x0000000000000008 },
904    Node { op: Op::Optional, flags: 2, a: 862, b: 0, first: 0x0000000000000008 },
905    Node { op: Op::Sequence, flags: 0, a: 563, b: 6, first: 0x0000000040000000 },
906    Node { op: Op::Rule, flags: 0, a: 1001, b: 4316, first: 0x0200000000000000 },
907    Node { op: Op::Optional, flags: 2, a: 865, b: 0, first: 0x0200000000000000 },
908    Node { op: Op::Keyword, flags: 0, a: 193, b: 0, first: 0x0000000002000000 },
909    Node { op: Op::Rule, flags: 0, a: 429, b: 1960, first: 0x0000000000004000 },
910    Node { op: Op::Optional, flags: 2, a: 868, b: 0, first: 0x0000000000004000 },
911    Node { op: Op::Rule, flags: 0, a: 441, b: 2006, first: 0xffffffffffffffc1 },
912    Node { op: Op::Optional, flags: 2, a: 870, b: 0, first: 0xffffffffffffffc1 },
913    Node { op: Op::Keyword, flags: 0, a: 285, b: 0, first: 0x0800000000000000 },
914    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
915    Node { op: Op::Rule, flags: 0, a: 454, b: 2046, first: 0x0000000000000008 },
916    Node { op: Op::Optional, flags: 2, a: 874, b: 0, first: 0x0000000000000008 },
917    Node { op: Op::Rule, flags: 0, a: 442, b: 2009, first: 0x0000000000000200 },
918    Node { op: Op::Optional, flags: 2, a: 876, b: 0, first: 0x0000000000000200 },
919    Node { op: Op::Rule, flags: 0, a: 440, b: 2005, first: 0xffffffffffffffcf },
920    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
921    Node { op: Op::Sequence, flags: 0, a: 569, b: 2, first: 0x0000000000000008 },
922    Node { op: Op::Repeat, flags: 0, a: 880, b: 0, first: 0x0000000000000008 },
923    Node { op: Op::Optional, flags: 2, a: 881, b: 0, first: 0x0000000000000008 },
924    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
925    Node { op: Op::Optional, flags: 2, a: 883, b: 0, first: 0x0000000000000008 },
926    Node { op: Op::Sequence, flags: 0, a: 571, b: 3, first: 0xffffffffffffffcf },
927    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
928    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
929    Node { op: Op::Sequence, flags: 0, a: 574, b: 3, first: 0x0000000000000008 },
930    Node { op: Op::Optional, flags: 2, a: 888, b: 0, first: 0x0000000000000008 },
931    Node { op: Op::Rule, flags: 0, a: 1068, b: 4654, first: 0x0000000400000000 },
932    Node { op: Op::Optional, flags: 2, a: 890, b: 0, first: 0x0000000400000000 },
933    Node { op: Op::Rule, flags: 0, a: 1053, b: 4574, first: 0x0000000080000000 },
934    Node { op: Op::Optional, flags: 2, a: 892, b: 0, first: 0x0000000080000000 },
935    Node { op: Op::Sequence, flags: 0, a: 577, b: 11, first: 0x0200000002000000 },
936    Node { op: Op::Rule, flags: 0, a: 533, b: 2441, first: 0x0020000000001000 },
937    Node { op: Op::Rule, flags: 0, a: 429, b: 1960, first: 0x0000000000004000 },
938    Node { op: Op::Optional, flags: 2, a: 896, b: 0, first: 0x0000000000004000 },
939    Node { op: Op::Rule, flags: 0, a: 705, b: 3133, first: 0xffffffffffffffc5 },
940    Node { op: Op::Rule, flags: 0, a: 530, b: 2434, first: 0x0000000000000008 },
941    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
942    Node { op: Op::Sequence, flags: 0, a: 588, b: 2, first: 0x0000000000000008 },
943    Node { op: Op::Repeat, flags: 0, a: 901, b: 0, first: 0x0000000000000008 },
944    Node { op: Op::Optional, flags: 2, a: 902, b: 0, first: 0x0000000000000008 },
945    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
946    Node { op: Op::Optional, flags: 2, a: 904, b: 0, first: 0x0000000000000008 },
947    Node { op: Op::Sequence, flags: 0, a: 590, b: 3, first: 0x0000000000000008 },
948    Node { op: Op::Sequence, flags: 0, a: 593, b: 4, first: 0x0020000000001000 },
949    Node { op: Op::Keyword, flags: 0, a: 343, b: 0, first: 0x0800000000000000 },
950    Node { op: Op::Keyword, flags: 0, a: 375, b: 0, first: 0x0000000200000000 },
951    Node { op: Op::Rule, flags: 0, a: 429, b: 1960, first: 0x0000000000004000 },
952    Node { op: Op::Optional, flags: 2, a: 910, b: 0, first: 0x0000000000004000 },
953    Node { op: Op::Rule, flags: 0, a: 705, b: 3133, first: 0xffffffffffffffc5 },
954    Node { op: Op::Sequence, flags: 0, a: 597, b: 3, first: 0x0000000200000000 },
955    Node { op: Op::Keyword, flags: 0, a: 382, b: 0, first: 0x0000010000000000 },
956    Node { op: Op::Rule, flags: 0, a: 429, b: 1960, first: 0x0000000000004000 },
957    Node { op: Op::Optional, flags: 2, a: 915, b: 0, first: 0x0000000000004000 },
958    Node { op: Op::Rule, flags: 0, a: 804, b: 3491, first: 0xffffffffffffffc1 },
959    Node { op: Op::Optional, flags: 2, a: 917, b: 0, first: 0xffffffffffffffc1 },
960    Node { op: Op::Rule, flags: 0, a: 805, b: 3494, first: 0x0000000000200000 },
961    Node { op: Op::Optional, flags: 2, a: 919, b: 0, first: 0x0000000000200000 },
962    Node { op: Op::Rule, flags: 0, a: 397, b: 1837, first: 0x0000000000000008 },
963    Node { op: Op::Sequence, flags: 0, a: 600, b: 5, first: 0x0000010000000000 },
964    Node { op: Op::Keyword, flags: 0, a: 383, b: 0, first: 0x0000020000000000 },
965    Node { op: Op::Keyword, flags: 0, a: 387, b: 0, first: 0x0000200000000000 },
966    Node { op: Op::Rule, flags: 0, a: 429, b: 1960, first: 0x0000000000004000 },
967    Node { op: Op::Optional, flags: 2, a: 925, b: 0, first: 0x0000000000004000 },
968    Node { op: Op::Rule, flags: 0, a: 705, b: 3133, first: 0xffffffffffffffc5 },
969    Node { op: Op::Rule, flags: 0, a: 828, b: 3576, first: 0x0000041021050200 },
970    Node { op: Op::Repeat, flags: 0, a: 928, b: 0, first: 0x0000041021050200 },
971    Node { op: Op::Optional, flags: 2, a: 929, b: 0, first: 0x0000041021050200 },
972    Node { op: Op::Sequence, flags: 0, a: 605, b: 4, first: 0x0000200000000000 },
973    Node { op: Op::Keyword, flags: 0, a: 82, b: 0, first: 0x0000000040000000 },
974    Node { op: Op::Rule, flags: 0, a: 637, b: 2834, first: 0x0000000000000040 },
975    Node { op: Op::Optional, flags: 2, a: 933, b: 0, first: 0x0000000000000040 },
976    Node { op: Op::Rule, flags: 0, a: 946, b: 4109, first: 0x0000000144000000 },
977    Node { op: Op::Optional, flags: 2, a: 935, b: 0, first: 0x0000000144000000 },
978    Node { op: Op::Rule, flags: 0, a: 196, b: 948, first: 0x0a282b0203001000 },
979    Node { op: Op::Sequence, flags: 0, a: 609, b: 4, first: 0x0000000040000000 },
980    Node { op: Op::Rule, flags: 0, a: 203, b: 983, first: 0x0000000002000000 },
981    Node { op: Op::Rule, flags: 0, a: 189, b: 907, first: 0x0020000000001000 },
982    Node { op: Op::Rule, flags: 0, a: 194, b: 931, first: 0x0000200000000000 },
983    Node { op: Op::Rule, flags: 0, a: 207, b: 1009, first: 0x0008000000000000 },
984    Node { op: Op::Rule, flags: 0, a: 191, b: 913, first: 0x0000000200000000 },
985    Node { op: Op::Rule, flags: 0, a: 208, b: 1024, first: 0x0800020001000000 },
986    Node { op: Op::Rule, flags: 0, a: 188, b: 894, first: 0x0200000002000000 },
987    Node { op: Op::Rule, flags: 0, a: 192, b: 922, first: 0x0000010000000000 },
988    Node { op: Op::Rule, flags: 0, a: 204, b: 997, first: 0x0000080000000000 },
989    Node { op: Op::Choice, flags: 0, a: 613, b: 9, first: 0x0a282b0203001000 },
990    Node { op: Op::Rule, flags: 0, a: 425, b: 1949, first: 0x0000000000000008 },
991    Node { op: Op::Optional, flags: 2, a: 949, b: 0, first: 0x0000000000000008 },
992    Node { op: Op::Rule, flags: 0, a: 663, b: 2986, first: 0x4000000000400000 },
993    Node { op: Op::Optional, flags: 2, a: 951, b: 0, first: 0x4000000000400000 },
994    Node { op: Op::Rule, flags: 0, a: 1068, b: 4654, first: 0x0000000400000000 },
995    Node { op: Op::Optional, flags: 2, a: 953, b: 0, first: 0x0000000400000000 },
996    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
997    Node { op: Op::Rule, flags: 0, a: 896, b: 3906, first: 0xffffffffffffffcf },
998    Node { op: Op::Rule, flags: 0, a: 1066, b: 4648, first: 0x0000000400000000 },
999    Node { op: Op::Optional, flags: 2, a: 957, b: 0, first: 0x0000000400000000 },
1000    Node { op: Op::Sequence, flags: 0, a: 622, b: 6, first: 0x4000000404400008 },
1001    Node { op: Op::Rule, flags: 0, a: 132, b: 640, first: 0xffffffffffffffc1 },
1002    Node { op: Op::Rule, flags: 0, a: 198, b: 960, first: 0xffffffffffffffc1 },
1003    Node { op: Op::Rule, flags: 0, a: 201, b: 972, first: 0x2201040000800000 },
1004    Node { op: Op::Choice, flags: 0, a: 628, b: 2, first: 0xffffffffffffffc1 },
1005    Node { op: Op::Rule, flags: 0, a: 199, b: 963, first: 0xffffffffffffffc1 },
1006    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1007    Node { op: Op::Sequence, flags: 0, a: 630, b: 2, first: 0x0000000000000008 },
1008    Node { op: Op::Repeat, flags: 0, a: 966, b: 0, first: 0x0000000000000008 },
1009    Node { op: Op::Optional, flags: 2, a: 967, b: 0, first: 0x0000000000000008 },
1010    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1011    Node { op: Op::Optional, flags: 2, a: 969, b: 0, first: 0x0000000000000008 },
1012    Node { op: Op::Sequence, flags: 0, a: 632, b: 3, first: 0xffffffffffffffc1 },
1013    Node { op: Op::Rule, flags: 0, a: 958, b: 4140, first: 0x2201040000800000 },
1014    Node { op: Op::Rule, flags: 0, a: 197, b: 959, first: 0x4000000404400008 },
1015    Node { op: Op::Rule, flags: 0, a: 185, b: 843, first: 0x0000000000000008 },
1016    Node { op: Op::Choice, flags: 0, a: 635, b: 2, first: 0x4000000404400008 },
1017    Node { op: Op::Keyword, flags: 0, a: 425, b: 0, first: 0x0000000002000000 },
1018    Node { op: Op::Rule, flags: 0, a: 429, b: 1960, first: 0x0000000000004000 },
1019    Node { op: Op::Optional, flags: 2, a: 977, b: 0, first: 0x0000000000004000 },
1020    Node { op: Op::Rule, flags: 0, a: 705, b: 3133, first: 0xffffffffffffffc5 },
1021    Node { op: Op::Rule, flags: 0, a: 202, b: 975, first: 0x4000000404400008 },
1022    Node { op: Op::Rule, flags: 0, a: 153, b: 715, first: 0x0800000000000000 },
1023    Node { op: Op::Optional, flags: 2, a: 981, b: 0, first: 0x0800000000000000 },
1024    Node { op: Op::Sequence, flags: 0, a: 637, b: 5, first: 0x0000000002000000 },
1025    Node { op: Op::Keyword, flags: 0, a: 443, b: 0, first: 0x0000080000000000 },
1026    Node { op: Op::Rule, flags: 0, a: 429, b: 1960, first: 0x0000000000004000 },
1027    Node { op: Op::Optional, flags: 2, a: 985, b: 0, first: 0x0000000000004000 },
1028    Node { op: Op::Rule, flags: 0, a: 975, b: 4197, first: 0xffffffffffffffc1 },
1029    Node { op: Op::Rule, flags: 0, a: 976, b: 4201, first: 0x0000006000001000 },
1030    Node { op: Op::Rule, flags: 0, a: 969, b: 4186, first: 0x0020000800000040 },
1031    Node { op: Op::Keyword, flags: 0, a: 285, b: 0, first: 0x0800000000000000 },
1032    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
1033    Node { op: Op::Rule, flags: 0, a: 724, b: 3198, first: 0x4000000000000000 },
1034    Node { op: Op::Optional, flags: 2, a: 992, b: 0, first: 0x4000000000000000 },
1035    Node { op: Op::Rule, flags: 0, a: 354, b: 1664, first: 0x0000400000000000 },
1036    Node { op: Op::Optional, flags: 2, a: 994, b: 0, first: 0x0000400000000000 },
1037    Node { op: Op::Rule, flags: 0, a: 967, b: 4173, first: 0x0020000c00080040 },
1038    Node { op: Op::Sequence, flags: 0, a: 642, b: 10, first: 0x0000080000000000 },
1039    Node { op: Op::Rule, flags: 0, a: 296, b: 1420, first: 0x0000000000200000 },
1040    Node { op: Op::Rule, flags: 0, a: 297, b: 1434, first: 0x0000000000200000 },
1041    Node { op: Op::Rule, flags: 0, a: 206, b: 1002, first: 0xffffffffffffffc1 },
1042    Node { op: Op::Choice, flags: 0, a: 652, b: 3, first: 0xffffffffffffffc1 },
1043    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
1044    Node { op: Op::Keyword, flags: 0, a: 451, b: 0, first: 0x0008000000000000 },
1045    Node { op: Op::Rule, flags: 0, a: 429, b: 1960, first: 0x0000000000004000 },
1046    Node { op: Op::Optional, flags: 2, a: 1004, b: 0, first: 0x0000000000004000 },
1047    Node { op: Op::Rule, flags: 0, a: 705, b: 3133, first: 0xffffffffffffffc5 },
1048    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
1049    Node { op: Op::Rule, flags: 0, a: 205, b: 1001, first: 0xffffffffffffffc1 },
1050    Node { op: Op::Sequence, flags: 0, a: 655, b: 5, first: 0x0008000000000000 },
1051    Node { op: Op::Rule, flags: 0, a: 193, b: 923, first: 0x0000020000000000 },
1052    Node { op: Op::Optional, flags: 2, a: 1010, b: 0, first: 0x0000020000000000 },
1053    Node { op: Op::Rule, flags: 0, a: 190, b: 908, first: 0x0800000000000000 },
1054    Node { op: Op::Optional, flags: 2, a: 1012, b: 0, first: 0x0800000000000000 },
1055    Node { op: Op::Keyword, flags: 0, a: 482, b: 0, first: 0x0000000001000000 },
1056    Node { op: Op::Rule, flags: 0, a: 429, b: 1960, first: 0x0000000000004000 },
1057    Node { op: Op::Optional, flags: 2, a: 1015, b: 0, first: 0x0000000000004000 },
1058    Node { op: Op::Rule, flags: 0, a: 705, b: 3133, first: 0xffffffffffffffc5 },
1059    Node { op: Op::Rule, flags: 0, a: 454, b: 2046, first: 0x0000000000000008 },
1060    Node { op: Op::Optional, flags: 2, a: 1018, b: 0, first: 0x0000000000000008 },
1061    Node { op: Op::Rule, flags: 0, a: 1068, b: 4654, first: 0x0000000400000000 },
1062    Node { op: Op::Optional, flags: 2, a: 1020, b: 0, first: 0x0000000400000000 },
1063    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
1064    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
1065    Node { op: Op::Sequence, flags: 0, a: 660, b: 9, first: 0x0800020001000000 },
1066    Node { op: Op::Keyword, flags: 0, a: 83, b: 0, first: 0x0000000080000000 },
1067    Node { op: Op::Keyword, flags: 0, a: 84, b: 0, first: 0x0000000100000000 },
1068    Node { op: Op::Keyword, flags: 0, a: 85, b: 0, first: 0x0000000200000000 },
1069    Node { op: Op::Rule, flags: 0, a: 211, b: 1027, first: 0x0000000200000000 },
1070    Node { op: Op::Rule, flags: 0, a: 774, b: 3388, first: 0x0000000008000000 },
1071    Node { op: Op::Choice, flags: 0, a: 669, b: 2, first: 0x0000000208000000 },
1072    Node { op: Op::Rule, flags: 0, a: 212, b: 1030, first: 0x0000000208000000 },
1073    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1074    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1075    Node { op: Op::Sequence, flags: 0, a: 671, b: 2, first: 0x0000000000000008 },
1076    Node { op: Op::Repeat, flags: 0, a: 1034, b: 0, first: 0x0000000000000008 },
1077    Node { op: Op::Optional, flags: 2, a: 1035, b: 0, first: 0x0000000000000008 },
1078    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1079    Node { op: Op::Optional, flags: 2, a: 1037, b: 0, first: 0x0000000000000008 },
1080    Node { op: Op::Sequence, flags: 0, a: 673, b: 3, first: 0xffffffffffffffcf },
1081    Node { op: Op::Optional, flags: 2, a: 1039, b: 0, first: 0xffffffffffffffcf },
1082    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1083    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1084    Node { op: Op::Sequence, flags: 0, a: 676, b: 3, first: 0x0000000000000008 },
1085    Node { op: Op::Sequence, flags: 0, a: 679, b: 2, first: 0x0000000208000000 },
1086    Node { op: Op::Keyword, flags: 0, a: 90, b: 0, first: 0x0000004000000000 },
1087    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1088    Node { op: Op::Keyword, flags: 0, a: 92, b: 0, first: 0x0000010000000000 },
1089    Node { op: Op::Keyword, flags: 0, a: 93, b: 0, first: 0x0000020000000000 },
1090    Node { op: Op::Choice, flags: 0, a: 681, b: 2, first: 0x0000030000000000 },
1091    Node { op: Op::Rule, flags: 0, a: 216, b: 1049, first: 0x0000030000000000 },
1092    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
1093    Node { op: Op::Rule, flags: 0, a: 418, b: 1919, first: 0x0000000000001800 },
1094    Node { op: Op::Sequence, flags: 0, a: 683, b: 3, first: 0x0000030000000000 },
1095    Node { op: Op::Rule, flags: 0, a: 216, b: 1049, first: 0x0000030000000000 },
1096    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
1097    Node { op: Op::Rule, flags: 0, a: 557, b: 2562, first: 0x0000000018000000 },
1098    Node { op: Op::Sequence, flags: 0, a: 686, b: 3, first: 0x0000030000000000 },
1099    Node { op: Op::Rule, flags: 0, a: 216, b: 1049, first: 0x0000030000000000 },
1100    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
1101    Node { op: Op::Rule, flags: 0, a: 803, b: 3490, first: 0x000000c000000000 },
1102    Node { op: Op::Sequence, flags: 0, a: 689, b: 3, first: 0x0000030000000000 },
1103    Node { op: Op::Keyword, flags: 0, a: 323, b: 0, first: 0x0000008000000000 },
1104    Node { op: Op::Keyword, flags: 0, a: 94, b: 0, first: 0x0000040000000000 },
1105    Node { op: Op::Rule, flags: 0, a: 220, b: 1062, first: 0x0000008000000000 },
1106    Node { op: Op::Optional, flags: 2, a: 1064, b: 0, first: 0x0000008000000000 },
1107    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1108    Node { op: Op::Sequence, flags: 0, a: 692, b: 3, first: 0x0000040000000000 },
1109    Node { op: Op::Keyword, flags: 0, a: 95, b: 0, first: 0x0000080000000000 },
1110    Node { op: Op::Rule, flags: 0, a: 994, b: 4295, first: 0x0000000000000008 },
1111    Node { op: Op::Optional, flags: 2, a: 1069, b: 0, first: 0x0000000000000008 },
1112    Node { op: Op::Sequence, flags: 0, a: 695, b: 2, first: 0x0000080000000000 },
1113    Node { op: Op::Keyword, flags: 0, a: 96, b: 0, first: 0x0000100000000000 },
1114    Node { op: Op::Keyword, flags: 0, a: 97, b: 0, first: 0x0000200000000000 },
1115    Node { op: Op::Choice, flags: 0, a: 697, b: 2, first: 0x0000300000000000 },
1116    Node { op: Op::Rule, flags: 0, a: 352, b: 1660, first: 0x0000100000000000 },
1117    Node { op: Op::Rule, flags: 0, a: 225, b: 1083, first: 0x0000400000000000 },
1118    Node { op: Op::Rule, flags: 0, a: 222, b: 1071, first: 0x0000080000000000 },
1119    Node { op: Op::Rule, flags: 0, a: 607, b: 2753, first: 0x0010000000000000 },
1120    Node { op: Op::Choice, flags: 0, a: 699, b: 4, first: 0x0010580000000000 },
1121    Node { op: Op::Keyword, flags: 0, a: 98, b: 0, first: 0x0000400000000000 },
1122    Node { op: Op::Rule, flags: 0, a: 994, b: 4295, first: 0x0000000000000008 },
1123    Node { op: Op::Optional, flags: 2, a: 1081, b: 0, first: 0x0000000000000008 },
1124    Node { op: Op::Sequence, flags: 0, a: 703, b: 2, first: 0x0000400000000000 },
1125    Node { op: Op::Rule, flags: 0, a: 228, b: 1092, first: 0x0002000000000000 },
1126    Node { op: Op::Rule, flags: 0, a: 229, b: 1093, first: 0x0000000000000004 },
1127    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
1128    Node { op: Op::Rule, flags: 0, a: 584, b: 2689, first: 0x0000080000000000 },
1129    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1130    Node { op: Op::Rule, flags: 0, a: 227, b: 1091, first: 0xffffffffffffffc1 },
1131    Node { op: Op::Choice, flags: 0, a: 705, b: 6, first: 0xffffffffffffffcf },
1132    Node { op: Op::Rule, flags: 0, a: 757, b: 3343, first: 0xffffffffffffffc1 },
1133    Node { op: Op::Rule, flags: 0, a: 601, b: 2736, first: 0x0002000000000000 },
1134    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
1135    Node { op: Op::Keyword, flags: 0, a: 100, b: 0, first: 0x0001000000000000 },
1136    Node { op: Op::Keyword, flags: 0, a: 100, b: 0, first: 0x0001000000000000 },
1137    Node { op: Op::Rule, flags: 0, a: 131, b: 629, first: 0xffffffffffffffcf },
1138    Node { op: Op::Sequence, flags: 0, a: 711, b: 2, first: 0x0001000000000000 },
1139    Node { op: Op::Keyword, flags: 0, a: 100, b: 0, first: 0x0001000000000000 },
1140    Node { op: Op::Keyword, flags: 0, a: 473, b: 0, first: 0x0000000000008000 },
1141    Node { op: Op::Sequence, flags: 0, a: 713, b: 2, first: 0x0001000000000000 },
1142    Node { op: Op::Keyword, flags: 0, a: 285, b: 0, first: 0x0800000000000000 },
1143    Node { op: Op::Keyword, flags: 0, a: 105, b: 0, first: 0x0020000000000000 },
1144    Node { op: Op::Rule, flags: 0, a: 501, b: 2296, first: 0x0004040000100000 },
1145    Node { op: Op::Sequence, flags: 0, a: 715, b: 3, first: 0x0800000000000000 },
1146    Node { op: Op::Keyword, flags: 0, a: 105, b: 0, first: 0x0020000000000000 },
1147    Node { op: Op::Keyword, flags: 0, a: 105, b: 0, first: 0x0020000000000000 },
1148    Node { op: Op::Rule, flags: 0, a: 1065, b: 4645, first: 0x0000000400000000 },
1149    Node { op: Op::Optional, flags: 2, a: 1107, b: 0, first: 0x0000000400000000 },
1150    Node { op: Op::Keyword, flags: 0, a: 105, b: 0, first: 0x0020000000000000 },
1151    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
1152    Node { op: Op::Rule, flags: 0, a: 944, b: 4104, first: 0xffffffffffffffc5 },
1153    Node { op: Op::Rule, flags: 0, a: 237, b: 1128, first: 0x0000000000000200 },
1154    Node { op: Op::Optional, flags: 2, a: 1112, b: 0, first: 0x0000000000000200 },
1155    Node { op: Op::Rule, flags: 0, a: 1053, b: 4574, first: 0x0000000080000000 },
1156    Node { op: Op::Optional, flags: 2, a: 1114, b: 0, first: 0x0000000080000000 },
1157    Node { op: Op::Rule, flags: 0, a: 771, b: 3379, first: 0x0000000000200000 },
1158    Node { op: Op::Optional, flags: 2, a: 1116, b: 0, first: 0x0000000000200000 },
1159    Node { op: Op::Sequence, flags: 0, a: 718, b: 7, first: 0x0020000400000000 },
1160    Node { op: Op::Keyword, flags: 0, a: 467, b: 0, first: 0x0000000000000200 },
1161    Node { op: Op::Rule, flags: 0, a: 936, b: 4060, first: 0xffffffffffffffcd },
1162    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1163    Node { op: Op::Sequence, flags: 0, a: 725, b: 2, first: 0x0000000000000008 },
1164    Node { op: Op::Repeat, flags: 0, a: 1122, b: 0, first: 0x0000000000000008 },
1165    Node { op: Op::Optional, flags: 2, a: 1123, b: 0, first: 0x0000000000000008 },
1166    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1167    Node { op: Op::Optional, flags: 2, a: 1125, b: 0, first: 0x0000000000000008 },
1168    Node { op: Op::Sequence, flags: 0, a: 727, b: 3, first: 0xffffffffffffffcd },
1169    Node { op: Op::Sequence, flags: 0, a: 730, b: 2, first: 0x0000000000000200 },
1170    Node { op: Op::Keyword, flags: 0, a: 106, b: 0, first: 0x0040000000000000 },
1171    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
1172    Node { op: Op::Optional, flags: 2, a: 1130, b: 0, first: 0x0000000004000000 },
1173    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
1174    Node { op: Op::Sequence, flags: 0, a: 732, b: 3, first: 0x0040000000000000 },
1175    Node { op: Op::Rule, flags: 0, a: 241, b: 1140, first: 0x0200000000000001 },
1176    Node { op: Op::Rule, flags: 0, a: 40, b: 221, first: 0x0000000008000001 },
1177    Node { op: Op::Choice, flags: 0, a: 735, b: 2, first: 0x0200000008000001 },
1178    Node { op: Op::Keyword, flags: 0, a: 109, b: 0, first: 0x0200000000000000 },
1179    Node { op: Op::Keyword, flags: 0, a: 109, b: 0, first: 0x0200000000000000 },
1180    Node { op: Op::Keyword, flags: 0, a: 110, b: 0, first: 0x0000000000000001 },
1181    Node { op: Op::Choice, flags: 0, a: 737, b: 2, first: 0x0200000000000001 },
1182    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
1183    Node { op: Op::Rule, flags: 0, a: 245, b: 1149, first: 0x0a00000000200000 },
1184    Node { op: Op::Rule, flags: 0, a: 250, b: 1166, first: 0xffffffffffffffc5 },
1185    Node { op: Op::Optional, flags: 2, a: 1143, b: 0, first: 0xffffffffffffffc5 },
1186    Node { op: Op::Sequence, flags: 0, a: 739, b: 2, first: 0x0a00000000200000 },
1187    Node { op: Op::Keyword, flags: 0, a: 111, b: 0, first: 0x0800000000000000 },
1188    Node { op: Op::Rule, flags: 0, a: 246, b: 1152, first: 0x0a00000000000000 },
1189    Node { op: Op::Rule, flags: 0, a: 919, b: 3980, first: 0x0000000000200000 },
1190    Node { op: Op::Choice, flags: 0, a: 741, b: 2, first: 0x0a00000000200000 },
1191    Node { op: Op::Rule, flags: 0, a: 244, b: 1146, first: 0x0800000000000000 },
1192    Node { op: Op::Rule, flags: 0, a: 240, b: 1137, first: 0x0200000000000000 },
1193    Node { op: Op::Choice, flags: 0, a: 743, b: 2, first: 0x0a00000000000000 },
1194    Node { op: Op::Rule, flags: 0, a: 245, b: 1149, first: 0x0a00000000200000 },
1195    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
1196    Node { op: Op::Sequence, flags: 0, a: 745, b: 2, first: 0x0a00000000200000 },
1197    Node { op: Op::Rule, flags: 0, a: 865, b: 3705, first: 0x0a40000000000000 },
1198    Node { op: Op::Rule, flags: 0, a: 859, b: 3684, first: 0x0040000000000000 },
1199    Node { op: Op::Rule, flags: 0, a: 247, b: 1155, first: 0x0a00000000200000 },
1200    Node { op: Op::Rule, flags: 0, a: 856, b: 3676, first: 0x0a40000000000000 },
1201    Node { op: Op::Rule, flags: 0, a: 857, b: 3680, first: 0x0040000000000000 },
1202    Node { op: Op::Rule, flags: 0, a: 243, b: 1145, first: 0x0a00000000200000 },
1203    Node { op: Op::Choice, flags: 0, a: 747, b: 6, first: 0x0a40000000200000 },
1204    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
1205    Node { op: Op::Rule, flags: 0, a: 242, b: 1141, first: 0xffffffffffffffc5 },
1206    Node { op: Op::Rule, flags: 0, a: 249, b: 1163, first: 0x0000000000000004 },
1207    Node { op: Op::Choice, flags: 0, a: 753, b: 2, first: 0xffffffffffffffc5 },
1208    Node { op: Op::Keyword, flags: 0, a: 112, b: 0, first: 0x0000000000000001 },
1209    Node { op: Op::Keyword, flags: 0, a: 147, b: 0, first: 0x0000002000000000 },
1210    Node { op: Op::Keyword, flags: 0, a: 358, b: 0, first: 0x0000000000010000 },
1211    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
1212    Node { op: Op::Sequence, flags: 0, a: 755, b: 4, first: 0x0000000000000001 },
1213    Node { op: Op::Keyword, flags: 0, a: 113, b: 0, first: 0x2000000000000000 },
1214    Node { op: Op::Rule, flags: 0, a: 214, b: 1045, first: 0x0000004000000000 },
1215    Node { op: Op::Optional, flags: 2, a: 1173, b: 0, first: 0x0000004000000000 },
1216    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1217    Node { op: Op::Optional, flags: 2, a: 1175, b: 0, first: 0x0000000000004000 },
1218    Node { op: Op::Rule, flags: 0, a: 91, b: 437, first: 0xffffffffffffffc1 },
1219    Node { op: Op::Sequence, flags: 0, a: 759, b: 4, first: 0x2000000000000000 },
1220    Node { op: Op::Keyword, flags: 0, a: 117, b: 0, first: 0x0000000000000080 },
1221    Node { op: Op::Rule, flags: 0, a: 571, b: 2623, first: 0x0000000000000100 },
1222    Node { op: Op::Rule, flags: 0, a: 577, b: 2661, first: 0x0100000000000000 },
1223    Node { op: Op::Choice, flags: 0, a: 763, b: 2, first: 0x0100000000000100 },
1224    Node { op: Op::Keyword, flags: 0, a: 9, b: 0, first: 0x0000000000008000 },
1225    Node { op: Op::Rule, flags: 0, a: 258, b: 1191, first: 0x0000000000000200 },
1226    Node { op: Op::Rule, flags: 0, a: 255, b: 1183, first: 0x0000000000008000 },
1227    Node { op: Op::Choice, flags: 0, a: 765, b: 2, first: 0x0000000000008200 },
1228    Node { op: Op::Keyword, flags: 0, a: 119, b: 0, first: 0x0000000000000200 },
1229    Node { op: Op::Keyword, flags: 0, a: 119, b: 0, first: 0x0000000000000200 },
1230    Node { op: Op::Rule, flags: 0, a: 259, b: 1204, first: 0x0800000000000000 },
1231    Node { op: Op::Optional, flags: 2, a: 1189, b: 0, first: 0x0800000000000000 },
1232    Node { op: Op::Sequence, flags: 0, a: 767, b: 2, first: 0x0000000000000200 },
1233    Node { op: Op::Keyword, flags: 0, a: 285, b: 0, first: 0x0800000000000000 },
1234    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1235    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1236    Node { op: Op::Sequence, flags: 0, a: 769, b: 2, first: 0x0000000000000008 },
1237    Node { op: Op::Repeat, flags: 0, a: 1195, b: 0, first: 0x0000000000000008 },
1238    Node { op: Op::Optional, flags: 2, a: 1196, b: 0, first: 0x0000000000000008 },
1239    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1240    Node { op: Op::Optional, flags: 2, a: 1198, b: 0, first: 0x0000000000000008 },
1241    Node { op: Op::Sequence, flags: 0, a: 771, b: 3, first: 0xffffffffffffffcf },
1242    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1243    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1244    Node { op: Op::Sequence, flags: 0, a: 774, b: 3, first: 0x0000000000000008 },
1245    Node { op: Op::Sequence, flags: 0, a: 777, b: 2, first: 0x0800000000000000 },
1246    Node { op: Op::Rule, flags: 0, a: 257, b: 1187, first: 0x0000000000000200 },
1247    Node { op: Op::Rule, flags: 0, a: 9, b: 41, first: 0x0000000000008000 },
1248    Node { op: Op::Choice, flags: 0, a: 779, b: 2, first: 0x0000000000008200 },
1249    Node { op: Op::Keyword, flags: 0, a: 120, b: 0, first: 0x0000000000000400 },
1250    Node { op: Op::Keyword, flags: 0, a: 271, b: 0, first: 0x0000200000000000 },
1251    Node { op: Op::Sequence, flags: 0, a: 781, b: 2, first: 0x0000000000000400 },
1252    Node { op: Op::Symbol, flags: 0, a: 47, b: 0, first: 0x000000000000000a },
1253    Node { op: Op::Rule, flags: 0, a: 119, b: 584, first: 0xffffffffffffffc1 },
1254    Node { op: Op::Sequence, flags: 0, a: 783, b: 2, first: 0x000000000000000a },
1255    Node { op: Op::Symbol, flags: 0, a: 47, b: 0, first: 0x000000000000000a },
1256    Node { op: Op::Rule, flags: 0, a: 119, b: 584, first: 0xffffffffffffffc1 },
1257    Node { op: Op::Sequence, flags: 0, a: 785, b: 2, first: 0x000000000000000a },
1258    Node { op: Op::Symbol, flags: 0, a: 47, b: 0, first: 0x000000000000000a },
1259    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1260    Node { op: Op::Sequence, flags: 0, a: 787, b: 2, first: 0x000000000000000a },
1261    Node { op: Op::Symbol, flags: 0, a: 47, b: 0, first: 0x000000000000000a },
1262    Node { op: Op::Rule, flags: 0, a: 548, b: 2527, first: 0xffffffffffffffc1 },
1263    Node { op: Op::Sequence, flags: 0, a: 789, b: 2, first: 0x000000000000000a },
1264    Node { op: Op::Rule, flags: 0, a: 265, b: 1222, first: 0x000000000000000a },
1265    Node { op: Op::Rule, flags: 0, a: 263, b: 1216, first: 0x000000000000000a },
1266    Node { op: Op::Choice, flags: 0, a: 791, b: 2, first: 0x000000000000000a },
1267    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1268    Node { op: Op::Rule, flags: 0, a: 262, b: 1213, first: 0x000000000000000a },
1269    Node { op: Op::Repeat, flags: 0, a: 1227, b: 0, first: 0x000000000000000a },
1270    Node { op: Op::Optional, flags: 2, a: 1228, b: 0, first: 0x000000000000000a },
1271    Node { op: Op::Sequence, flags: 0, a: 793, b: 2, first: 0xffffffffffffffc1 },
1272    Node { op: Op::Rule, flags: 0, a: 267, b: 1230, first: 0xffffffffffffffc1 },
1273    Node { op: Op::Keyword, flags: 0, a: 123, b: 0, first: 0x0000000000002000 },
1274    Node { op: Op::Keyword, flags: 0, a: 321, b: 0, first: 0x0000002000000000 },
1275    Node { op: Op::Sequence, flags: 0, a: 795, b: 2, first: 0x0000000000002000 },
1276    Node { op: Op::Rule, flags: 0, a: 81, b: 401, first: 0x0004000000000000 },
1277    Node { op: Op::Rule, flags: 0, a: 768, b: 3370, first: 0x0000000000100000 },
1278    Node { op: Op::Choice, flags: 0, a: 797, b: 2, first: 0x0004000000100000 },
1279    Node { op: Op::Keyword, flags: 0, a: 62, b: 0, first: 0x0000000000000400 },
1280    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1281    Node { op: Op::Optional, flags: 2, a: 1239, b: 0, first: 0x0000000000004000 },
1282    Node { op: Op::Rule, flags: 0, a: 126, b: 601, first: 0xffffffffffffffc1 },
1283    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1284    Node { op: Op::Sequence, flags: 0, a: 799, b: 2, first: 0x0000000000000008 },
1285    Node { op: Op::Repeat, flags: 0, a: 1243, b: 0, first: 0x0000000000000008 },
1286    Node { op: Op::Optional, flags: 2, a: 1244, b: 0, first: 0x0000000000000008 },
1287    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1288    Node { op: Op::Optional, flags: 2, a: 1246, b: 0, first: 0x0000000000000008 },
1289    Node { op: Op::Sequence, flags: 0, a: 801, b: 3, first: 0xffffffffffffffc1 },
1290    Node { op: Op::Sequence, flags: 0, a: 804, b: 3, first: 0x0000000000000400 },
1291    Node { op: Op::Keyword, flags: 0, a: 124, b: 0, first: 0x0000000000004000 },
1292    Node { op: Op::Keyword, flags: 0, a: 63, b: 0, first: 0x0000000000000800 },
1293    Node { op: Op::Optional, flags: 2, a: 1251, b: 0, first: 0x0000000000000800 },
1294    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1295    Node { op: Op::Optional, flags: 2, a: 1253, b: 0, first: 0x0000000000004000 },
1296    Node { op: Op::Rule, flags: 0, a: 581, b: 2678, first: 0xffffffffffffffc1 },
1297    Node { op: Op::Rule, flags: 0, a: 270, b: 1237, first: 0x0004000000100000 },
1298    Node { op: Op::Optional, flags: 2, a: 1256, b: 0, first: 0x0004000000100000 },
1299    Node { op: Op::Sequence, flags: 0, a: 807, b: 5, first: 0x0000000000004000 },
1300    Node { op: Op::Keyword, flags: 0, a: 124, b: 0, first: 0x0000000000004000 },
1301    Node { op: Op::Keyword, flags: 0, a: 75, b: 0, first: 0x0000000000800000 },
1302    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1303    Node { op: Op::Optional, flags: 2, a: 1261, b: 0, first: 0x0000000000004000 },
1304    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1305    Node { op: Op::Rule, flags: 0, a: 270, b: 1237, first: 0x0004000000100000 },
1306    Node { op: Op::Optional, flags: 2, a: 1264, b: 0, first: 0x0004000000100000 },
1307    Node { op: Op::Sequence, flags: 0, a: 812, b: 5, first: 0x0000000000004000 },
1308    Node { op: Op::Keyword, flags: 0, a: 124, b: 0, first: 0x0000000000004000 },
1309    Node { op: Op::Keyword, flags: 0, a: 100, b: 0, first: 0x0001000000000000 },
1310    Node { op: Op::Sequence, flags: 0, a: 817, b: 2, first: 0x0000000000004000 },
1311    Node { op: Op::Rule, flags: 0, a: 286, b: 1368, first: 0x0000000003020000 },
1312    Node { op: Op::Rule, flags: 0, a: 287, b: 1380, first: 0x0000000000001000 },
1313    Node { op: Op::Rule, flags: 0, a: 277, b: 1299, first: 0x0020000000001000 },
1314    Node { op: Op::Rule, flags: 0, a: 281, b: 1327, first: 0x0000000200000000 },
1315    Node { op: Op::Rule, flags: 0, a: 278, b: 1311, first: 0x0000000002000000 },
1316    Node { op: Op::Rule, flags: 0, a: 284, b: 1351, first: 0x0000200000000000 },
1317    Node { op: Op::Rule, flags: 0, a: 271, b: 1249, first: 0x0000000000000400 },
1318    Node { op: Op::Rule, flags: 0, a: 289, b: 1399, first: 0x0008000000000000 },
1319    Node { op: Op::Rule, flags: 0, a: 282, b: 1336, first: 0x0000010144000000 },
1320    Node { op: Op::Rule, flags: 0, a: 288, b: 1387, first: 0x0000080000000000 },
1321    Node { op: Op::Choice, flags: 0, a: 819, b: 10, first: 0x0028290347021400 },
1322    Node { op: Op::Keyword, flags: 0, a: 124, b: 0, first: 0x0000000000004000 },
1323    Node { op: Op::Keyword, flags: 0, a: 145, b: 0, first: 0x0000000800000000 },
1324    Node { op: Op::Keyword, flags: 0, a: 356, b: 0, first: 0x0000000000000001 },
1325    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1326    Node { op: Op::Optional, flags: 2, a: 1284, b: 0, first: 0x0000000000004000 },
1327    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
1328    Node { op: Op::Sequence, flags: 0, a: 829, b: 5, first: 0x0000000000004000 },
1329    Node { op: Op::Rule, flags: 0, a: 390, b: 1803, first: 0x0020000000001000 },
1330    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1331    Node { op: Op::Optional, flags: 2, a: 1289, b: 0, first: 0x0000000000004000 },
1332    Node { op: Op::Rule, flags: 0, a: 385, b: 1796, first: 0xffffffffffffffc1 },
1333    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1334    Node { op: Op::Sequence, flags: 0, a: 834, b: 2, first: 0x0000000000000008 },
1335    Node { op: Op::Repeat, flags: 0, a: 1293, b: 0, first: 0x0000000000000008 },
1336    Node { op: Op::Optional, flags: 2, a: 1294, b: 0, first: 0x0000000000000008 },
1337    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1338    Node { op: Op::Optional, flags: 2, a: 1296, b: 0, first: 0x0000000000000008 },
1339    Node { op: Op::Sequence, flags: 0, a: 836, b: 3, first: 0xffffffffffffffc1 },
1340    Node { op: Op::Sequence, flags: 0, a: 839, b: 3, first: 0x0020000000001000 },
1341    Node { op: Op::Keyword, flags: 0, a: 193, b: 0, first: 0x0000000002000000 },
1342    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1343    Node { op: Op::Optional, flags: 2, a: 1301, b: 0, first: 0x0000000000004000 },
1344    Node { op: Op::Rule, flags: 0, a: 703, b: 3128, first: 0xffffffffffffffc1 },
1345    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1346    Node { op: Op::Sequence, flags: 0, a: 842, b: 2, first: 0x0000000000000008 },
1347    Node { op: Op::Repeat, flags: 0, a: 1305, b: 0, first: 0x0000000000000008 },
1348    Node { op: Op::Optional, flags: 2, a: 1306, b: 0, first: 0x0000000000000008 },
1349    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1350    Node { op: Op::Optional, flags: 2, a: 1308, b: 0, first: 0x0000000000000008 },
1351    Node { op: Op::Sequence, flags: 0, a: 844, b: 3, first: 0xffffffffffffffc1 },
1352    Node { op: Op::Sequence, flags: 0, a: 847, b: 3, first: 0x0000000002000000 },
1353    Node { op: Op::Keyword, flags: 0, a: 124, b: 0, first: 0x0000000000004000 },
1354    Node { op: Op::Rule, flags: 0, a: 279, b: 1312, first: 0x0000000000004000 },
1355    Node { op: Op::Rule, flags: 0, a: 837, b: 3603, first: 0x0004000000000000 },
1356    Node { op: Op::Choice, flags: 0, a: 850, b: 2, first: 0x0004000000004000 },
1357    Node { op: Op::Keyword, flags: 0, a: 375, b: 0, first: 0x0000000200000000 },
1358    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1359    Node { op: Op::Optional, flags: 2, a: 1317, b: 0, first: 0x0000000000004000 },
1360    Node { op: Op::Rule, flags: 0, a: 705, b: 3133, first: 0xffffffffffffffc5 },
1361    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1362    Node { op: Op::Sequence, flags: 0, a: 852, b: 2, first: 0x0000000000000008 },
1363    Node { op: Op::Repeat, flags: 0, a: 1321, b: 0, first: 0x0000000000000008 },
1364    Node { op: Op::Optional, flags: 2, a: 1322, b: 0, first: 0x0000000000000008 },
1365    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1366    Node { op: Op::Optional, flags: 2, a: 1324, b: 0, first: 0x0000000000000008 },
1367    Node { op: Op::Sequence, flags: 0, a: 854, b: 3, first: 0xffffffffffffffc5 },
1368    Node { op: Op::Sequence, flags: 0, a: 857, b: 3, first: 0x0000000200000000 },
1369    Node { op: Op::Rule, flags: 0, a: 946, b: 4109, first: 0x0000000144000000 },
1370    Node { op: Op::Optional, flags: 2, a: 1328, b: 0, first: 0x0000000144000000 },
1371    Node { op: Op::Keyword, flags: 0, a: 382, b: 0, first: 0x0000010000000000 },
1372    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1373    Node { op: Op::Optional, flags: 2, a: 1331, b: 0, first: 0x0000000000004000 },
1374    Node { op: Op::Rule, flags: 0, a: 804, b: 3491, first: 0xffffffffffffffc1 },
1375    Node { op: Op::Rule, flags: 0, a: 283, b: 1339, first: 0x0008000000000000 },
1376    Node { op: Op::Optional, flags: 2, a: 1334, b: 0, first: 0x0008000000000000 },
1377    Node { op: Op::Sequence, flags: 0, a: 860, b: 5, first: 0x0000010144000000 },
1378    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
1379    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1380    Node { op: Op::Sequence, flags: 0, a: 865, b: 2, first: 0x0008000000000000 },
1381    Node { op: Op::Keyword, flags: 0, a: 387, b: 0, first: 0x0000200000000000 },
1382    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1383    Node { op: Op::Optional, flags: 2, a: 1341, b: 0, first: 0x0000000000004000 },
1384    Node { op: Op::Rule, flags: 0, a: 708, b: 3150, first: 0xffffffffffffffc1 },
1385    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1386    Node { op: Op::Sequence, flags: 0, a: 867, b: 2, first: 0x0000000000000008 },
1387    Node { op: Op::Repeat, flags: 0, a: 1345, b: 0, first: 0x0000000000000008 },
1388    Node { op: Op::Optional, flags: 2, a: 1346, b: 0, first: 0x0000000000000008 },
1389    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1390    Node { op: Op::Optional, flags: 2, a: 1348, b: 0, first: 0x0000000000000008 },
1391    Node { op: Op::Sequence, flags: 0, a: 869, b: 3, first: 0xffffffffffffffc1 },
1392    Node { op: Op::Sequence, flags: 0, a: 872, b: 3, first: 0x0000200000000000 },
1393    Node { op: Op::Keyword, flags: 0, a: 124, b: 0, first: 0x0000000000004000 },
1394    Node { op: Op::Rule, flags: 0, a: 275, b: 1280, first: 0x0028290347021400 },
1395    Node { op: Op::Rule, flags: 0, a: 270, b: 1237, first: 0x0004000000100000 },
1396    Node { op: Op::Optional, flags: 2, a: 1354, b: 0, first: 0x0004000000100000 },
1397    Node { op: Op::Sequence, flags: 0, a: 875, b: 3, first: 0x0000000000004000 },
1398    Node { op: Op::Rule, flags: 0, a: 932, b: 4037, first: 0x0000000003020000 },
1399    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1400    Node { op: Op::Optional, flags: 2, a: 1358, b: 0, first: 0x0000000000004000 },
1401    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
1402    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1403    Node { op: Op::Sequence, flags: 0, a: 878, b: 2, first: 0x0000000000000008 },
1404    Node { op: Op::Repeat, flags: 0, a: 1362, b: 0, first: 0x0000000000000008 },
1405    Node { op: Op::Optional, flags: 2, a: 1363, b: 0, first: 0x0000000000000008 },
1406    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1407    Node { op: Op::Optional, flags: 2, a: 1365, b: 0, first: 0x0000000000000008 },
1408    Node { op: Op::Sequence, flags: 0, a: 880, b: 3, first: 0xffffffffffffffc5 },
1409    Node { op: Op::Sequence, flags: 0, a: 883, b: 3, first: 0x0000000003020000 },
1410    Node { op: Op::Rule, flags: 0, a: 144, b: 683, first: 0x0000000000001000 },
1411    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1412    Node { op: Op::Optional, flags: 2, a: 1370, b: 0, first: 0x0000000000004000 },
1413    Node { op: Op::Rule, flags: 0, a: 929, b: 4029, first: 0xffffffffffffffc1 },
1414    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1415    Node { op: Op::Sequence, flags: 0, a: 886, b: 2, first: 0x0000000000000008 },
1416    Node { op: Op::Repeat, flags: 0, a: 1374, b: 0, first: 0x0000000000000008 },
1417    Node { op: Op::Optional, flags: 2, a: 1375, b: 0, first: 0x0000000000000008 },
1418    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1419    Node { op: Op::Optional, flags: 2, a: 1377, b: 0, first: 0x0000000000000008 },
1420    Node { op: Op::Sequence, flags: 0, a: 888, b: 3, first: 0xffffffffffffffc1 },
1421    Node { op: Op::Sequence, flags: 0, a: 891, b: 3, first: 0x0000000000001000 },
1422    Node { op: Op::Keyword, flags: 0, a: 443, b: 0, first: 0x0000080000000000 },
1423    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1424    Node { op: Op::Optional, flags: 2, a: 1382, b: 0, first: 0x0000000000004000 },
1425    Node { op: Op::Rule, flags: 0, a: 975, b: 4197, first: 0xffffffffffffffc1 },
1426    Node { op: Op::Keyword, flags: 0, a: 285, b: 0, first: 0x0800000000000000 },
1427    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
1428    Node { op: Op::Sequence, flags: 0, a: 894, b: 5, first: 0x0000080000000000 },
1429    Node { op: Op::Keyword, flags: 0, a: 451, b: 0, first: 0x0008000000000000 },
1430    Node { op: Op::Rule, flags: 0, a: 428, b: 1956, first: 0x0000000000004000 },
1431    Node { op: Op::Optional, flags: 2, a: 1389, b: 0, first: 0x0000000000004000 },
1432    Node { op: Op::Rule, flags: 0, a: 712, b: 3168, first: 0xffffffffffffffc1 },
1433    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1434    Node { op: Op::Sequence, flags: 0, a: 899, b: 2, first: 0x0000000000000008 },
1435    Node { op: Op::Repeat, flags: 0, a: 1393, b: 0, first: 0x0000000000000008 },
1436    Node { op: Op::Optional, flags: 2, a: 1394, b: 0, first: 0x0000000000000008 },
1437    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1438    Node { op: Op::Optional, flags: 2, a: 1396, b: 0, first: 0x0000000000000008 },
1439    Node { op: Op::Sequence, flags: 0, a: 901, b: 3, first: 0xffffffffffffffc1 },
1440    Node { op: Op::Sequence, flags: 0, a: 904, b: 3, first: 0x0008000000000000 },
1441    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1442    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1443    Node { op: Op::Sequence, flags: 0, a: 907, b: 2, first: 0x0000000000000008 },
1444    Node { op: Op::Keyword, flags: 0, a: 128, b: 0, first: 0x0000000000040000 },
1445    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
1446    Node { op: Op::Sequence, flags: 0, a: 909, b: 2, first: 0x0000000000040000 },
1447    Node { op: Op::EndOfInput, flags: 0, a: 0, b: 0, first: 0x0000000000000020 },
1448    Node { op: Op::Symbol, flags: 0, a: 48, b: 0, first: 0x0000000000000008 },
1449    Node { op: Op::Rule, flags: 0, a: 295, b: 1414, first: 0xffffffffffffffcf },
1450    Node { op: Op::Optional, flags: 2, a: 1408, b: 0, first: 0xffffffffffffffcf },
1451    Node { op: Op::Sequence, flags: 0, a: 911, b: 2, first: 0x0000000000000008 },
1452    Node { op: Op::Symbol, flags: 0, a: 29, b: 0, first: 0x0000000000000008 },
1453    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1454    Node { op: Op::Rule, flags: 0, a: 294, b: 1411, first: 0x0000000000000008 },
1455    Node { op: Op::Choice, flags: 0, a: 913, b: 2, first: 0xffffffffffffffcf },
1456    Node { op: Op::Keyword, flags: 0, a: 131, b: 0, first: 0x0000000000200000 },
1457    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
1458    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1459    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1460    Node { op: Op::Sequence, flags: 0, a: 915, b: 3, first: 0x0000000000000008 },
1461    Node { op: Op::Sequence, flags: 0, a: 918, b: 2, first: 0x0000000000200000 },
1462    Node { op: Op::Keyword, flags: 0, a: 131, b: 0, first: 0x0000000000200000 },
1463    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
1464    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1465    Node { op: Op::Sequence, flags: 0, a: 920, b: 2, first: 0x0000000000000008 },
1466    Node { op: Op::Repeat, flags: 0, a: 1424, b: 0, first: 0x0000000000000008 },
1467    Node { op: Op::Optional, flags: 2, a: 1425, b: 0, first: 0x0000000000000008 },
1468    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1469    Node { op: Op::Optional, flags: 2, a: 1427, b: 0, first: 0x0000000000000008 },
1470    Node { op: Op::Sequence, flags: 0, a: 922, b: 3, first: 0x0000000000000004 },
1471    Node { op: Op::Optional, flags: 2, a: 1429, b: 0, first: 0x0000000000000004 },
1472    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1473    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1474    Node { op: Op::Sequence, flags: 0, a: 925, b: 3, first: 0x0000000000000008 },
1475    Node { op: Op::Sequence, flags: 0, a: 928, b: 2, first: 0x0000000000200000 },
1476    Node { op: Op::Keyword, flags: 0, a: 132, b: 0, first: 0x0000000000400000 },
1477    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1478    Node { op: Op::Optional, flags: 2, a: 1436, b: 0, first: 0xffffffffffffffcf },
1479    Node { op: Op::Sequence, flags: 0, a: 930, b: 2, first: 0x0000000000400000 },
1480    Node { op: Op::Keyword, flags: 0, a: 133, b: 0, first: 0x0000000000800000 },
1481    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
1482    Node { op: Op::Optional, flags: 2, a: 1440, b: 0, first: 0x0000000004000000 },
1483    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
1484    Node { op: Op::Sequence, flags: 0, a: 932, b: 3, first: 0x0000000000800000 },
1485    Node { op: Op::Keyword, flags: 0, a: 133, b: 0, first: 0x0000000000800000 },
1486    Node { op: Op::Rule, flags: 0, a: 156, b: 727, first: 0xffffffffffffffcf },
1487    Node { op: Op::Sequence, flags: 0, a: 935, b: 2, first: 0x0000000000800000 },
1488    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
1489    Node { op: Op::Keyword, flags: 0, a: 86, b: 0, first: 0x0000000400000000 },
1490    Node { op: Op::Keyword, flags: 0, a: 370, b: 0, first: 0x0000000010000000 },
1491    Node { op: Op::Sequence, flags: 0, a: 937, b: 2, first: 0x0000000400000000 },
1492    Node { op: Op::Rule, flags: 0, a: 267, b: 1230, first: 0xffffffffffffffc1 },
1493    Node { op: Op::Keyword, flags: 0, a: 171, b: 0, first: 0x2000000000000000 },
1494    Node { op: Op::Rule, flags: 0, a: 312, b: 1482, first: 0x000000000c000000 },
1495    Node { op: Op::Rule, flags: 0, a: 309, b: 1473, first: 0xffffffffffffffcd },
1496    Node { op: Op::Sequence, flags: 0, a: 939, b: 2, first: 0x000000000c000000 },
1497    Node { op: Op::Rule, flags: 0, a: 303, b: 1451, first: 0xffffffffffffffc1 },
1498    Node { op: Op::Rule, flags: 0, a: 301, b: 1447, first: 0xffffffffffffffc5 },
1499    Node { op: Op::Choice, flags: 0, a: 941, b: 2, first: 0xffffffffffffffc5 },
1500    Node { op: Op::Rule, flags: 0, a: 306, b: 1458, first: 0xffffffffffffffc5 },
1501    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1502    Node { op: Op::Sequence, flags: 0, a: 943, b: 2, first: 0x0000000000000008 },
1503    Node { op: Op::Repeat, flags: 0, a: 1461, b: 0, first: 0x0000000000000008 },
1504    Node { op: Op::Optional, flags: 2, a: 1462, b: 0, first: 0x0000000000000008 },
1505    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1506    Node { op: Op::Optional, flags: 2, a: 1464, b: 0, first: 0x0000000000000008 },
1507    Node { op: Op::Sequence, flags: 0, a: 945, b: 3, first: 0xffffffffffffffc5 },
1508    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1509    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1510    Node { op: Op::Sequence, flags: 0, a: 948, b: 3, first: 0x0000000000000008 },
1511    Node { op: Op::Rule, flags: 0, a: 306, b: 1458, first: 0xffffffffffffffc5 },
1512    Node { op: Op::Rule, flags: 0, a: 307, b: 1469, first: 0x0000000000000008 },
1513    Node { op: Op::Rule, flags: 0, a: 308, b: 1470, first: 0xffffffffffffffc5 },
1514    Node { op: Op::Choice, flags: 0, a: 951, b: 2, first: 0xffffffffffffffcd },
1515    Node { op: Op::Keyword, flags: 0, a: 268, b: 0, first: 0x0000040000000000 },
1516    Node { op: Op::Keyword, flags: 0, a: 293, b: 0, first: 0x0000000000000200 },
1517    Node { op: Op::Sequence, flags: 0, a: 953, b: 2, first: 0x0000040000000000 },
1518    Node { op: Op::Keyword, flags: 0, a: 137, b: 0, first: 0x0000000008000000 },
1519    Node { op: Op::Keyword, flags: 0, a: 277, b: 0, first: 0x0008000000000000 },
1520    Node { op: Op::Sequence, flags: 0, a: 955, b: 2, first: 0x0000000008000000 },
1521    Node { op: Op::Keyword, flags: 0, a: 137, b: 0, first: 0x0000000008000000 },
1522    Node { op: Op::Keyword, flags: 0, a: 136, b: 0, first: 0x0000000004000000 },
1523    Node { op: Op::Choice, flags: 0, a: 957, b: 2, first: 0x000000000c000000 },
1524    Node { op: Op::Keyword, flags: 0, a: 435, b: 0, first: 0x0000000800000000 },
1525    Node { op: Op::Keyword, flags: 0, a: 140, b: 0, first: 0x0000000040000000 },
1526    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1527    Node { op: Op::Rule, flags: 0, a: 927, b: 4019, first: 0x0000000000000008 },
1528    Node { op: Op::Optional, flags: 2, a: 1486, b: 0, first: 0x0000000000000008 },
1529    Node { op: Op::Sequence, flags: 0, a: 959, b: 3, first: 0x0000000040000000 },
1530    Node { op: Op::Rule, flags: 0, a: 317, b: 1508, first: 0xffffffffffffffc1 },
1531    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1532    Node { op: Op::Optional, flags: 2, a: 1490, b: 0, first: 0xffffffffffffffcf },
1533    Node { op: Op::Sequence, flags: 0, a: 962, b: 2, first: 0xffffffffffffffc1 },
1534    Node { op: Op::Rule, flags: 0, a: 315, b: 1492, first: 0xffffffffffffffc1 },
1535    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1536    Node { op: Op::Sequence, flags: 0, a: 964, b: 2, first: 0x0000000000000008 },
1537    Node { op: Op::Repeat, flags: 0, a: 1495, b: 0, first: 0x0000000000000008 },
1538    Node { op: Op::Optional, flags: 2, a: 1496, b: 0, first: 0x0000000000000008 },
1539    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1540    Node { op: Op::Optional, flags: 2, a: 1498, b: 0, first: 0x0000000000000008 },
1541    Node { op: Op::Sequence, flags: 0, a: 966, b: 3, first: 0xffffffffffffffc1 },
1542    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1543    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1544    Node { op: Op::Sequence, flags: 0, a: 969, b: 3, first: 0x0000000000000008 },
1545    Node { op: Op::Rule, flags: 0, a: 23, b: 134, first: 0x0000000000180000 },
1546    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
1547    Node { op: Op::Rule, flags: 0, a: 379, b: 1757, first: 0x2a94b436a9452c00 },
1548    Node { op: Op::Rule, flags: 0, a: 997, b: 4298, first: 0x2a96f436a9453c00 },
1549    Node { op: Op::Choice, flags: 0, a: 972, b: 4, first: 0xffffffffffffffc1 },
1550    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
1551    Node { op: Op::Keyword, flags: 0, a: 142, b: 0, first: 0x0000000100000000 },
1552    Node { op: Op::Rule, flags: 0, a: 23, b: 134, first: 0x0000000000180000 },
1553    Node { op: Op::Optional, flags: 2, a: 1511, b: 0, first: 0x0000000000180000 },
1554    Node { op: Op::Rule, flags: 0, a: 316, b: 1503, first: 0x0000000000000008 },
1555    Node { op: Op::Optional, flags: 2, a: 1513, b: 0, first: 0x0000000000000008 },
1556    Node { op: Op::Rule, flags: 0, a: 320, b: 1538, first: 0x4a6d8c8c7e3ac648 },
1557    Node { op: Op::Sequence, flags: 0, a: 976, b: 4, first: 0x0000000100000000 },
1558    Node { op: Op::Rule, flags: 0, a: 17, b: 84, first: 0x0000000000020000 },
1559    Node { op: Op::Rule, flags: 0, a: 24, b: 140, first: 0x0000000000180000 },
1560    Node { op: Op::Rule, flags: 0, a: 80, b: 400, first: 0x0001000000000000 },
1561    Node { op: Op::Rule, flags: 0, a: 107, b: 520, first: 0x4000800000000000 },
1562    Node { op: Op::Rule, flags: 0, a: 181, b: 820, first: 0x0000000010000000 },
1563    Node { op: Op::Rule, flags: 0, a: 195, b: 938, first: 0x0000000040000000 },
1564    Node { op: Op::Rule, flags: 0, a: 221, b: 1067, first: 0x0000040000000000 },
1565    Node { op: Op::Rule, flags: 0, a: 236, b: 1118, first: 0x0020000400000000 },
1566    Node { op: Op::Rule, flags: 0, a: 285, b: 1356, first: 0x0000000000004000 },
1567    Node { op: Op::Rule, flags: 0, a: 314, b: 1488, first: 0x0000000040000000 },
1568    Node { op: Op::Rule, flags: 0, a: 460, b: 2080, first: 0x0000000c00000000 },
1569    Node { op: Op::Rule, flags: 0, a: 522, b: 2404, first: 0x0000000000000040 },
1570    Node { op: Op::Rule, flags: 0, a: 545, b: 2518, first: 0x0000000400080000 },
1571    Node { op: Op::Rule, flags: 0, a: 693, b: 3093, first: 0x0000000800000000 },
1572    Node { op: Op::Rule, flags: 0, a: 698, b: 3114, first: 0x0000008000000000 },
1573    Node { op: Op::Rule, flags: 0, a: 318, b: 1509, first: 0x4a4808043a208008 },
1574    Node { op: Op::Rule, flags: 0, a: 964, b: 4166, first: 0x0000008004108240 },
1575    Node { op: Op::Rule, flags: 0, a: 1027, b: 4442, first: 0x0000000400000040 },
1576    Node { op: Op::Rule, flags: 0, a: 1040, b: 4520, first: 0x0000000000000400 },
1577    Node { op: Op::Rule, flags: 0, a: 844, b: 3641, first: 0x0004000000000000 },
1578    Node { op: Op::Rule, flags: 0, a: 766, b: 3366, first: 0x0000000000008000 },
1579    Node { op: Op::Choice, flags: 0, a: 980, b: 21, first: 0x4a6d8c8c7e3ac648 },
1580    Node { op: Op::Symbol, flags: 0, a: 33, b: 0, first: 0x0000000000000008 },
1581    Node { op: Op::Symbol, flags: 0, a: 25, b: 0, first: 0x0000000000000008 },
1582    Node { op: Op::Choice, flags: 0, a: 1001, b: 2, first: 0x0000000000000008 },
1583    Node { op: Op::Rule, flags: 0, a: 123, b: 596, first: 0xffffffffffffffcf },
1584    Node { op: Op::Rule, flags: 0, a: 323, b: 1549, first: 0x0000000000000008 },
1585    Node { op: Op::Repeat, flags: 0, a: 1543, b: 0, first: 0x0000000000000008 },
1586    Node { op: Op::Optional, flags: 2, a: 1544, b: 0, first: 0x0000000000000008 },
1587    Node { op: Op::Sequence, flags: 0, a: 1003, b: 2, first: 0xffffffffffffffcf },
1588    Node { op: Op::Rule, flags: 0, a: 321, b: 1541, first: 0x0000000000000008 },
1589    Node { op: Op::Rule, flags: 0, a: 123, b: 596, first: 0xffffffffffffffcf },
1590    Node { op: Op::Sequence, flags: 0, a: 1005, b: 2, first: 0x0000000000000008 },
1591    Node { op: Op::Keyword, flags: 0, a: 144, b: 0, first: 0x0000000400000000 },
1592    Node { op: Op::Rule, flags: 0, a: 91, b: 437, first: 0xffffffffffffffc1 },
1593    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
1594    Node { op: Op::Sequence, flags: 0, a: 1007, b: 2, first: 0xffffffffffffffc1 },
1595    Node { op: Op::Keyword, flags: 0, a: 143, b: 0, first: 0x0000000200000000 },
1596    Node { op: Op::Keyword, flags: 0, a: 90, b: 0, first: 0x0000004000000000 },
1597    Node { op: Op::Rule, flags: 0, a: 325, b: 1553, first: 0xffffffffffffffc1 },
1598    Node { op: Op::Optional, flags: 2, a: 1556, b: 0, first: 0xffffffffffffffc1 },
1599    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
1600    Node { op: Op::Rule, flags: 0, a: 397, b: 1837, first: 0x0000000000000008 },
1601    Node { op: Op::Optional, flags: 2, a: 1559, b: 0, first: 0x0000000000000008 },
1602    Node { op: Op::Sequence, flags: 0, a: 1009, b: 5, first: 0x0000000200000000 },
1603    Node { op: Op::Rule, flags: 0, a: 503, b: 2306, first: 0xffffffffffffffcf },
1604    Node { op: Op::Rule, flags: 0, a: 115, b: 560, first: 0xffffffffffffffc1 },
1605    Node { op: Op::Rule, flags: 0, a: 329, b: 1570, first: 0xffffffffffffffcf },
1606    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1607    Node { op: Op::Choice, flags: 0, a: 1014, b: 3, first: 0xffffffffffffffcf },
1608    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1609    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
1610    Node { op: Op::Rule, flags: 0, a: 121, b: 588, first: 0xffffffffffffffc5 },
1611    Node { op: Op::Sequence, flags: 0, a: 1017, b: 3, first: 0xffffffffffffffcf },
1612    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1613    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1614    Node { op: Op::Optional, flags: 2, a: 1572, b: 0, first: 0xffffffffffffffc1 },
1615    Node { op: Op::Sequence, flags: 0, a: 1020, b: 2, first: 0xffffffffffffffcf },
1616    Node { op: Op::Rule, flags: 0, a: 328, b: 1566, first: 0xffffffffffffffcf },
1617    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1618    Node { op: Op::Sequence, flags: 0, a: 1022, b: 2, first: 0x0000000000000008 },
1619    Node { op: Op::Repeat, flags: 0, a: 1577, b: 0, first: 0x0000000000000008 },
1620    Node { op: Op::Optional, flags: 2, a: 1578, b: 0, first: 0x0000000000000008 },
1621    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1622    Node { op: Op::Optional, flags: 2, a: 1580, b: 0, first: 0x0000000000000008 },
1623    Node { op: Op::Sequence, flags: 0, a: 1024, b: 3, first: 0xffffffffffffffcf },
1624    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
1625    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1626    Node { op: Op::Sequence, flags: 0, a: 1027, b: 2, first: 0x0000000004000000 },
1627    Node { op: Op::Rule, flags: 0, a: 186, b: 855, first: 0x0000000040000000 },
1628    Node { op: Op::Rule, flags: 0, a: 276, b: 1287, first: 0x0000000000004000 },
1629    Node { op: Op::Choice, flags: 0, a: 1029, b: 2, first: 0x0000000040004000 },
1630    Node { op: Op::Rule, flags: 0, a: 397, b: 1837, first: 0x0000000000000008 },
1631    Node { op: Op::Rule, flags: 0, a: 187, b: 864, first: 0x0000000040000000 },
1632    Node { op: Op::Rule, flags: 0, a: 730, b: 3222, first: 0x0000000000000001 },
1633    Node { op: Op::Rule, flags: 0, a: 251, b: 1171, first: 0x0000000000000001 },
1634    Node { op: Op::Rule, flags: 0, a: 860, b: 3690, first: 0x0040000000000000 },
1635    Node { op: Op::Choice, flags: 0, a: 1031, b: 4, first: 0x0040000040000001 },
1636    Node { op: Op::Rule, flags: 0, a: 339, b: 1617, first: 0x01b833c1bfe01800 },
1637    Node { op: Op::Rule, flags: 0, a: 341, b: 1624, first: 0xffffffffffffffc1 },
1638    Node { op: Op::Rule, flags: 0, a: 342, b: 1625, first: 0x0000000000000004 },
1639    Node { op: Op::Choice, flags: 0, a: 1035, b: 3, first: 0xffffffffffffffc5 },
1640    Node { op: Op::Rule, flags: 0, a: 336, b: 1598, first: 0xffffffffffffffc5 },
1641    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
1642    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1643    Node { op: Op::Sequence, flags: 0, a: 1038, b: 3, first: 0xffffffffffffffc5 },
1644    Node { op: Op::Rule, flags: 0, a: 1079, b: 4691, first: 0x0030000000000000 },
1645    Node { op: Op::Rule, flags: 0, a: 559, b: 2569, first: 0x0000000180000000 },
1646    Node { op: Op::Rule, flags: 0, a: 216, b: 1049, first: 0x0000030000000000 },
1647    Node { op: Op::Rule, flags: 0, a: 418, b: 1919, first: 0x0000000000001800 },
1648    Node { op: Op::Rule, flags: 0, a: 557, b: 2562, first: 0x0000000018000000 },
1649    Node { op: Op::Rule, flags: 0, a: 803, b: 3490, first: 0x000000c000000000 },
1650    Node { op: Op::Rule, flags: 0, a: 554, b: 2557, first: 0x0000000006000000 },
1651    Node { op: Op::Rule, flags: 0, a: 552, b: 2551, first: 0x0000000000600000 },
1652    Node { op: Op::Rule, flags: 0, a: 1052, b: 4571, first: 0x0000000030000000 },
1653    Node { op: Op::Rule, flags: 0, a: 714, b: 3174, first: 0x0018000000000000 },
1654    Node { op: Op::Rule, flags: 0, a: 223, b: 1074, first: 0x0000300000000000 },
1655    Node { op: Op::Rule, flags: 0, a: 101, b: 475, first: 0x0180000000000000 },
1656    Node { op: Op::Rule, flags: 0, a: 553, b: 2554, first: 0x0000000001800000 },
1657    Node { op: Op::Choice, flags: 0, a: 1041, b: 13, first: 0x01b833c1bfe01800 },
1658    Node { op: Op::Rule, flags: 0, a: 338, b: 1616, first: 0x01b833c1bfe01800 },
1659    Node { op: Op::Keyword, flags: 0, a: 148, b: 0, first: 0x0000004000000000 },
1660    Node { op: Op::Rule, flags: 0, a: 337, b: 1602, first: 0xffffffffffffffc5 },
1661    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1662    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1663    Node { op: Op::Sequence, flags: 0, a: 1054, b: 3, first: 0x0000000000000008 },
1664    Node { op: Op::Sequence, flags: 0, a: 1057, b: 2, first: 0x0000004000000000 },
1665    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1666    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
1667    Node { op: Op::Symbol, flags: 0, a: 30, b: 0, first: 0x0000000000000008 },
1668    Node { op: Op::Symbol, flags: 0, a: 31, b: 0, first: 0x0000000000000008 },
1669    Node { op: Op::Symbol, flags: 0, a: 24, b: 0, first: 0x0000000000000008 },
1670    Node { op: Op::Symbol, flags: 0, a: 32, b: 0, first: 0x0000000000000008 },
1671    Node { op: Op::Choice, flags: 0, a: 1059, b: 4, first: 0x0000000000000008 },
1672    Node { op: Op::Keyword, flags: 0, a: 149, b: 0, first: 0x0000008000000000 },
1673    Node { op: Op::Keyword, flags: 0, a: 151, b: 0, first: 0x0000020000000000 },
1674    Node { op: Op::Rule, flags: 0, a: 351, b: 1653, first: 0x00000a0000000000 },
1675    Node { op: Op::Rule, flags: 0, a: 347, b: 1639, first: 0xffffffffffffffcf },
1676    Node { op: Op::Rule, flags: 0, a: 776, b: 3405, first: 0x0000000030000000 },
1677    Node { op: Op::Keyword, flags: 0, a: 286, b: 0, first: 0x1000000000000000 },
1678    Node { op: Op::Sequence, flags: 0, a: 1063, b: 5, first: 0x0000020000000000 },
1679    Node { op: Op::Rule, flags: 0, a: 345, b: 1637, first: 0x0000020000000000 },
1680    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1681    Node { op: Op::Keyword, flags: 0, a: 152, b: 0, first: 0x0000040000000000 },
1682    Node { op: Op::Rule, flags: 0, a: 350, b: 1650, first: 0x0000000000000008 },
1683    Node { op: Op::Sequence, flags: 0, a: 1068, b: 2, first: 0x0000040000000000 },
1684    Node { op: Op::Keyword, flags: 0, a: 489, b: 0, first: 0x0000000080000000 },
1685    Node { op: Op::Optional, flags: 2, a: 1643, b: 0, first: 0x0000000080000000 },
1686    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1687    Node { op: Op::Sequence, flags: 0, a: 1070, b: 2, first: 0xffffffffffffffcf },
1688    Node { op: Op::Rule, flags: 0, a: 349, b: 1646, first: 0xffffffffffffffcf },
1689    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1690    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1691    Node { op: Op::Sequence, flags: 0, a: 1072, b: 3, first: 0x0000000000000008 },
1692    Node { op: Op::Keyword, flags: 0, a: 153, b: 0, first: 0x0000080000000000 },
1693    Node { op: Op::Keyword, flags: 0, a: 267, b: 0, first: 0x0000020000000000 },
1694    Node { op: Op::Choice, flags: 0, a: 1075, b: 2, first: 0x00000a0000000000 },
1695    Node { op: Op::Keyword, flags: 0, a: 154, b: 0, first: 0x0000100000000000 },
1696    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
1697    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1698    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1699    Node { op: Op::Sequence, flags: 0, a: 1077, b: 3, first: 0x0000000000000008 },
1700    Node { op: Op::Optional, flags: 2, a: 1658, b: 0, first: 0x0000000000000008 },
1701    Node { op: Op::Sequence, flags: 0, a: 1080, b: 2, first: 0x0000100000000000 },
1702    Node { op: Op::Keyword, flags: 0, a: 155, b: 0, first: 0x0000200000000000 },
1703    Node { op: Op::Rule, flags: 0, a: 355, b: 1668, first: 0x0000400000000000 },
1704    Node { op: Op::Rule, flags: 0, a: 356, b: 1672, first: 0x0000400000000000 },
1705    Node { op: Op::Choice, flags: 0, a: 1082, b: 2, first: 0x0000400000000000 },
1706    Node { op: Op::Keyword, flags: 0, a: 156, b: 0, first: 0x0000400000000000 },
1707    Node { op: Op::Keyword, flags: 0, a: 125, b: 0, first: 0x0000000000008000 },
1708    Node { op: Op::Keyword, flags: 0, a: 370, b: 0, first: 0x0000000010000000 },
1709    Node { op: Op::Sequence, flags: 0, a: 1084, b: 3, first: 0x0000400000000000 },
1710    Node { op: Op::Keyword, flags: 0, a: 156, b: 0, first: 0x0000400000000000 },
1711    Node { op: Op::Keyword, flags: 0, a: 125, b: 0, first: 0x0000000000008000 },
1712    Node { op: Op::Keyword, flags: 0, a: 410, b: 0, first: 0x0000000000000400 },
1713    Node { op: Op::Sequence, flags: 0, a: 1087, b: 3, first: 0x0000400000000000 },
1714    Node { op: Op::Keyword, flags: 0, a: 156, b: 0, first: 0x0000400000000000 },
1715    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1716    Node { op: Op::Sequence, flags: 0, a: 1090, b: 2, first: 0x0000400000000000 },
1717    Node { op: Op::Keyword, flags: 0, a: 270, b: 0, first: 0x0000100000000000 },
1718    Node { op: Op::Keyword, flags: 0, a: 157, b: 0, first: 0x0000800000000000 },
1719    Node { op: Op::Rule, flags: 0, a: 358, b: 1676, first: 0x0000100000000000 },
1720    Node { op: Op::Optional, flags: 2, a: 1678, b: 0, first: 0x0000100000000000 },
1721    Node { op: Op::Keyword, flags: 0, a: 275, b: 0, first: 0x0002000000000000 },
1722    Node { op: Op::Rule, flags: 0, a: 134, b: 659, first: 0xffffffffffffffc1 },
1723    Node { op: Op::Sequence, flags: 0, a: 1092, b: 4, first: 0x0000800000000000 },
1724    Node { op: Op::Keyword, flags: 0, a: 157, b: 0, first: 0x0000800000000000 },
1725    Node { op: Op::Rule, flags: 0, a: 360, b: 1683, first: 0x0000800000000000 },
1726    Node { op: Op::Optional, flags: 2, a: 1684, b: 0, first: 0x0000800000000000 },
1727    Node { op: Op::Keyword, flags: 0, a: 337, b: 0, first: 0x0020000000000000 },
1728    Node { op: Op::Rule, flags: 0, a: 894, b: 3866, first: 0xffffffffffffffc9 },
1729    Node { op: Op::Sequence, flags: 0, a: 1096, b: 3, first: 0x0020800000000000 },
1730    Node { op: Op::Keyword, flags: 0, a: 345, b: 0, first: 0x2000000000000000 },
1731    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
1732    Node { op: Op::Rule, flags: 0, a: 134, b: 659, first: 0xffffffffffffffc1 },
1733    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1734    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1735    Node { op: Op::Sequence, flags: 0, a: 1099, b: 3, first: 0x0000000000000008 },
1736    Node { op: Op::Optional, flags: 2, a: 1694, b: 0, first: 0x0000000000000008 },
1737    Node { op: Op::Rule, flags: 2, a: 502, b: 2301, first: 0x0800000000000000 },
1738    Node { op: Op::Sequence, flags: 0, a: 1102, b: 4, first: 0x2000000000000000 },
1739    Node { op: Op::Rule, flags: 0, a: 368, b: 1718, first: 0x0020000000000000 },
1740    Node { op: Op::Rule, flags: 0, a: 365, b: 1709, first: 0x0000000400000000 },
1741    Node { op: Op::Rule, flags: 0, a: 366, b: 1712, first: 0xffffffffffffffcf },
1742    Node { op: Op::Choice, flags: 0, a: 1106, b: 3, first: 0xffffffffffffffcf },
1743    Node { op: Op::Rule, flags: 0, a: 369, b: 1722, first: 0x0040000020000040 },
1744    Node { op: Op::Rule, flags: 0, a: 367, b: 1715, first: 0xffffffffffffffcf },
1745    Node { op: Op::Rule, flags: 0, a: 1056, b: 4591, first: 0x0000000008000000 },
1746    Node { op: Op::Optional, flags: 2, a: 1704, b: 0, first: 0x0000000008000000 },
1747    Node { op: Op::Sequence, flags: 0, a: 1109, b: 3, first: 0x0040000020000040 },
1748    Node { op: Op::Keyword, flags: 0, a: 86, b: 0, first: 0x0000000400000000 },
1749    Node { op: Op::Keyword, flags: 0, a: 370, b: 0, first: 0x0000000010000000 },
1750    Node { op: Op::Sequence, flags: 0, a: 1112, b: 2, first: 0x0000000400000000 },
1751    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1752    Node { op: Op::Rule, flags: 0, a: 695, b: 3097, first: 0x0000201000000000 },
1753    Node { op: Op::Sequence, flags: 0, a: 1114, b: 2, first: 0xffffffffffffffcf },
1754    Node { op: Op::Rule, flags: 0, a: 60, b: 314, first: 0x0000010000000000 },
1755    Node { op: Op::Rule, flags: 0, a: 875, b: 3771, first: 0xffffffffffffffcf },
1756    Node { op: Op::Choice, flags: 0, a: 1116, b: 2, first: 0xffffffffffffffcf },
1757    Node { op: Op::Keyword, flags: 0, a: 453, b: 0, first: 0x0020000000000000 },
1758    Node { op: Op::Rule, flags: 0, a: 695, b: 3097, first: 0x0000201000000000 },
1759    Node { op: Op::Sequence, flags: 0, a: 1118, b: 2, first: 0x0020000000000000 },
1760    Node { op: Op::Rule, flags: 0, a: 779, b: 3413, first: 0x0000000020000000 },
1761    Node { op: Op::Rule, flags: 0, a: 717, b: 3183, first: 0x0040000000000000 },
1762    Node { op: Op::Rule, flags: 0, a: 415, b: 1912, first: 0x0000000000000040 },
1763    Node { op: Op::Choice, flags: 0, a: 1120, b: 3, first: 0x0040000020000040 },
1764    Node { op: Op::Keyword, flags: 0, a: 160, b: 0, first: 0x0004000000000000 },
1765    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
1766    Node { op: Op::Rule, flags: 0, a: 936, b: 4060, first: 0xffffffffffffffcd },
1767    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1768    Node { op: Op::Sequence, flags: 0, a: 1123, b: 2, first: 0x0000000000000008 },
1769    Node { op: Op::Repeat, flags: 0, a: 1727, b: 0, first: 0x0000000000000008 },
1770    Node { op: Op::Optional, flags: 2, a: 1728, b: 0, first: 0x0000000000000008 },
1771    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1772    Node { op: Op::Optional, flags: 2, a: 1730, b: 0, first: 0x0000000000000008 },
1773    Node { op: Op::Sequence, flags: 0, a: 1125, b: 3, first: 0xffffffffffffffcd },
1774    Node { op: Op::Sequence, flags: 0, a: 1128, b: 2, first: 0x0008000000000000 },
1775    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
1776    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1777    Node { op: Op::Sequence, flags: 0, a: 1130, b: 2, first: 0x0008000000000000 },
1778    Node { op: Op::Rule, flags: 0, a: 170, b: 768, first: 0x0008000000000000 },
1779    Node { op: Op::Rule, flags: 0, a: 183, b: 829, first: 0x0000004000000000 },
1780    Node { op: Op::Choice, flags: 0, a: 1132, b: 2, first: 0x0008004000000000 },
1781    Node { op: Op::Rule, flags: 0, a: 371, b: 1733, first: 0x0008000000000000 },
1782    Node { op: Op::Rule, flags: 0, a: 807, b: 3503, first: 0x0000080000000000 },
1783    Node { op: Op::Optional, flags: 2, a: 1741, b: 0, first: 0x0000080000000000 },
1784    Node { op: Op::Sequence, flags: 0, a: 1134, b: 2, first: 0x0008000000000000 },
1785    Node { op: Op::Rule, flags: 0, a: 376, b: 1749, first: 0x0008000000000000 },
1786    Node { op: Op::Rule, flags: 0, a: 377, b: 1752, first: 0x0008000000000000 },
1787    Node { op: Op::Choice, flags: 0, a: 1136, b: 2, first: 0x0008000000000000 },
1788    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
1789    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1790    Node { op: Op::Sequence, flags: 0, a: 1138, b: 2, first: 0x0008000000000000 },
1791    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
1792    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
1793    Node { op: Op::Sequence, flags: 0, a: 1140, b: 2, first: 0x0008000000000000 },
1794    Node { op: Op::Keyword, flags: 0, a: 162, b: 0, first: 0x0010000000000000 },
1795    Node { op: Op::Keyword, flags: 0, a: 295, b: 0, first: 0x0000000000000800 },
1796    Node { op: Op::Optional, flags: 2, a: 1754, b: 0, first: 0x0000000000000800 },
1797    Node { op: Op::Sequence, flags: 0, a: 1142, b: 2, first: 0x0010000000000000 },
1798    Node { op: Op::KeywordClass, flags: 0, a: 8, b: 0, first: 0x2a94b436a9452c00 },
1799    Node { op: Op::Rule, flags: 0, a: 563, b: 2589, first: 0xffffffffffffffc1 },
1800    Node { op: Op::Rule, flags: 0, a: 685, b: 3065, first: 0xffffffffffffffcf },
1801    Node { op: Op::Choice, flags: 0, a: 1144, b: 2, first: 0xffffffffffffffcf },
1802    Node { op: Op::Rule, flags: 0, a: 380, b: 1760, first: 0xffffffffffffffcf },
1803    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1804    Node { op: Op::Sequence, flags: 0, a: 1146, b: 2, first: 0x0000000000000008 },
1805    Node { op: Op::Repeat, flags: 0, a: 1763, b: 0, first: 0x0000000000000008 },
1806    Node { op: Op::Optional, flags: 2, a: 1764, b: 0, first: 0x0000000000000008 },
1807    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1808    Node { op: Op::Optional, flags: 2, a: 1766, b: 0, first: 0x0000000000000008 },
1809    Node { op: Op::Sequence, flags: 0, a: 1148, b: 3, first: 0xffffffffffffffcf },
1810    Node { op: Op::Rule, flags: 0, a: 385, b: 1796, first: 0xffffffffffffffc1 },
1811    Node { op: Op::Rule, flags: 0, a: 384, b: 1792, first: 0x0000000000000008 },
1812    Node { op: Op::Rule, flags: 0, a: 1076, b: 4686, first: 0x0000000800000000 },
1813    Node { op: Op::Optional, flags: 2, a: 1771, b: 0, first: 0x0000000800000000 },
1814    Node { op: Op::Rule, flags: 0, a: 348, b: 1642, first: 0x0000040000000000 },
1815    Node { op: Op::Optional, flags: 2, a: 1773, b: 0, first: 0x0000040000000000 },
1816    Node { op: Op::Rule, flags: 0, a: 324, b: 1550, first: 0x0000000400000000 },
1817    Node { op: Op::Optional, flags: 2, a: 1775, b: 0, first: 0x0000000400000000 },
1818    Node { op: Op::Rule, flags: 0, a: 647, b: 2880, first: 0x0000000000001000 },
1819    Node { op: Op::Optional, flags: 2, a: 1777, b: 0, first: 0x0000000000001000 },
1820    Node { op: Op::Sequence, flags: 0, a: 1151, b: 6, first: 0xffffffffffffffc1 },
1821    Node { op: Op::Rule, flags: 0, a: 260, b: 1207, first: 0x0000000000008200 },
1822    Node { op: Op::Optional, flags: 2, a: 1780, b: 0, first: 0x0000000000008200 },
1823    Node { op: Op::Rule, flags: 0, a: 381, b: 1768, first: 0xffffffffffffffcf },
1824    Node { op: Op::Optional, flags: 2, a: 1782, b: 0, first: 0xffffffffffffffcf },
1825    Node { op: Op::Rule, flags: 0, a: 639, b: 2844, first: 0x0000000000000080 },
1826    Node { op: Op::Optional, flags: 2, a: 1784, b: 0, first: 0x0000000000000080 },
1827    Node { op: Op::Rule, flags: 0, a: 431, b: 1966, first: 0x0000000000048000 },
1828    Node { op: Op::Optional, flags: 2, a: 1786, b: 0, first: 0x0000000000048000 },
1829    Node { op: Op::Sequence, flags: 2, a: 1157, b: 4, first: 0xffffffffffffffcf },
1830    Node { op: Op::Rule, flags: 2, a: 383, b: 1788, first: 0xffffffffffffffcf },
1831    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1832    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1833    Node { op: Op::Sequence, flags: 0, a: 1161, b: 3, first: 0x0000000000000008 },
1834    Node { op: Op::Rule, flags: 0, a: 94, b: 447, first: 0xffffffffffffffc1 },
1835    Node { op: Op::Rule, flags: 0, a: 797, b: 3471, first: 0xffffffffffffffc1 },
1836    Node { op: Op::Rule, flags: 0, a: 388, b: 1799, first: 0xffffffffffffffc1 },
1837    Node { op: Op::Choice, flags: 0, a: 1164, b: 3, first: 0xffffffffffffffc1 },
1838    Node { op: Op::Keyword, flags: 0, a: 163, b: 0, first: 0x0020000000000000 },
1839    Node { op: Op::Identifier, flags: 0, a: Suggestion::ScalarFunctionName as u32, b: 0, first: 0xffffffffffffffc1 },
1840    Node { op: Op::Rule, flags: 0, a: 387, b: 1798, first: 0xffffffffffffffc1 },
1841    Node { op: Op::Keyword, flags: 0, a: 163, b: 0, first: 0x0020000000000000 },
1842    Node { op: Op::Rule, flags: 0, a: 391, b: 1804, first: 0x0000000000001000 },
1843    Node { op: Op::Rule, flags: 0, a: 389, b: 1800, first: 0x0020000000000000 },
1844    Node { op: Op::Choice, flags: 0, a: 1167, b: 2, first: 0x0020000000001000 },
1845    Node { op: Op::Keyword, flags: 0, a: 238, b: 0, first: 0x0000000000001000 },
1846    Node { op: Op::Keyword, flags: 0, a: 165, b: 0, first: 0x0080000000000000 },
1847    Node { op: Op::Rule, flags: 0, a: 22, b: 131, first: 0x0000400000040000 },
1848    Node { op: Op::Optional, flags: 2, a: 1806, b: 0, first: 0x0000400000040000 },
1849    Node { op: Op::Sequence, flags: 0, a: 1169, b: 2, first: 0x0080000000000000 },
1850    Node { op: Op::Rule, flags: 0, a: 392, b: 1808, first: 0x0080000000000000 },
1851    Node { op: Op::Optional, flags: 2, a: 1809, b: 0, first: 0x0080000000000000 },
1852    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
1853    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1854    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1855    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1856    Node { op: Op::Sequence, flags: 0, a: 1171, b: 3, first: 0x0000000000000008 },
1857    Node { op: Op::Rule, flags: 0, a: 394, b: 1821, first: 0x0000000004008000 },
1858    Node { op: Op::Optional, flags: 2, a: 1816, b: 0, first: 0x0000000004008000 },
1859    Node { op: Op::Sequence, flags: 0, a: 1174, b: 4, first: 0x0080000004000000 },
1860    Node { op: Op::Rule, flags: 0, a: 1051, b: 4568, first: 0x0000000004000000 },
1861    Node { op: Op::Rule, flags: 0, a: 898, b: 3911, first: 0x0000000000008000 },
1862    Node { op: Op::Choice, flags: 0, a: 1178, b: 2, first: 0x0000000004008000 },
1863    Node { op: Op::Rule, flags: 0, a: 177, b: 803, first: 0xffffffffffffffc1 },
1864    Node { op: Op::Rule, flags: 0, a: 400, b: 1845, first: 0xffffffffffffffcf },
1865    Node { op: Op::Optional, flags: 2, a: 1823, b: 0, first: 0xffffffffffffffcf },
1866    Node { op: Op::Sequence, flags: 0, a: 1180, b: 2, first: 0xffffffffffffffc1 },
1867    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1868    Node { op: Op::Rule, flags: 0, a: 395, b: 1825, first: 0xffffffffffffffc1 },
1869    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1870    Node { op: Op::Sequence, flags: 0, a: 1182, b: 2, first: 0x0000000000000008 },
1871    Node { op: Op::Repeat, flags: 0, a: 1829, b: 0, first: 0x0000000000000008 },
1872    Node { op: Op::Optional, flags: 2, a: 1830, b: 0, first: 0x0000000000000008 },
1873    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1874    Node { op: Op::Optional, flags: 2, a: 1832, b: 0, first: 0x0000000000000008 },
1875    Node { op: Op::Sequence, flags: 0, a: 1184, b: 3, first: 0xffffffffffffffc1 },
1876    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1877    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1878    Node { op: Op::Sequence, flags: 0, a: 1187, b: 3, first: 0x0000000000000008 },
1879    Node { op: Op::Rule, flags: 0, a: 399, b: 1842, first: 0x0000000000000008 },
1880    Node { op: Op::Rule, flags: 0, a: 642, b: 2863, first: 0xffffffffffffffcf },
1881    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1882    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1883    Node { op: Op::Sequence, flags: 0, a: 1190, b: 3, first: 0x0000000000000008 },
1884    Node { op: Op::Rule, flags: 0, a: 398, b: 1838, first: 0x0000000000000008 },
1885    Node { op: Op::Rule, flags: 0, a: 396, b: 1826, first: 0xffffffffffffffcf },
1886    Node { op: Op::Choice, flags: 0, a: 1193, b: 2, first: 0xffffffffffffffcf },
1887    Node { op: Op::Keyword, flags: 0, a: 166, b: 0, first: 0x0000000000000001 },
1888    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1889    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1890    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1891    Node { op: Op::Sequence, flags: 0, a: 1195, b: 3, first: 0x0000000000000008 },
1892    Node { op: Op::Optional, flags: 2, a: 1850, b: 0, first: 0x0000000000000008 },
1893    Node { op: Op::Sequence, flags: 0, a: 1198, b: 2, first: 0x0000000000000001 },
1894    Node { op: Op::Keyword, flags: 0, a: 167, b: 0, first: 0x0200000000000000 },
1895    Node { op: Op::Symbol, flags: 0, a: 9, b: 0, first: 0x0000000000000008 },
1896    Node { op: Op::Choice, flags: 0, a: 1200, b: 2, first: 0x0200000000000008 },
1897    Node { op: Op::Keyword, flags: 0, a: 168, b: 0, first: 0x0400000000000000 },
1898    Node { op: Op::Keyword, flags: 0, a: 9, b: 0, first: 0x0000000000008000 },
1899    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1900    Node { op: Op::Keyword, flags: 0, a: 171, b: 0, first: 0x2000000000000000 },
1901    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
1902    Node { op: Op::Rule, flags: 0, a: 408, b: 1870, first: 0xffffffffffffffcf },
1903    Node { op: Op::Sequence, flags: 0, a: 1202, b: 3, first: 0x2000000000000000 },
1904    Node { op: Op::Rule, flags: 0, a: 290, b: 1402, first: 0x0000000000000008 },
1905    Node { op: Op::Rule, flags: 0, a: 213, b: 1044, first: 0x0000000208000000 },
1906    Node { op: Op::Rule, flags: 0, a: 414, b: 1911, first: 0x4000000000000000 },
1907    Node { op: Op::Rule, flags: 0, a: 405, b: 1858, first: 0xffffffffffffffcf },
1908    Node { op: Op::Choice, flags: 0, a: 1205, b: 4, first: 0xffffffffffffffcf },
1909    Node { op: Op::Rule, flags: 0, a: 409, b: 1878, first: 0xffffffffffffffcf },
1910    Node { op: Op::Rule, flags: 0, a: 404, b: 1857, first: 0x0000000000008000 },
1911    Node { op: Op::Choice, flags: 0, a: 1209, b: 2, first: 0xffffffffffffffcf },
1912    Node { op: Op::Rule, flags: 0, a: 407, b: 1867, first: 0xffffffffffffffcf },
1913    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1914    Node { op: Op::Sequence, flags: 0, a: 1211, b: 2, first: 0x0000000000000008 },
1915    Node { op: Op::Repeat, flags: 0, a: 1873, b: 0, first: 0x0000000000000008 },
1916    Node { op: Op::Optional, flags: 2, a: 1874, b: 0, first: 0x0000000000000008 },
1917    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1918    Node { op: Op::Optional, flags: 2, a: 1876, b: 0, first: 0x0000000000000008 },
1919    Node { op: Op::Sequence, flags: 0, a: 1213, b: 3, first: 0xffffffffffffffcf },
1920    Node { op: Op::Rule, flags: 0, a: 413, b: 1897, first: 0xc000000000000000 },
1921    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1922    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1923    Node { op: Op::Sequence, flags: 0, a: 1216, b: 2, first: 0x0000000000000008 },
1924    Node { op: Op::Repeat, flags: 0, a: 1882, b: 0, first: 0x0000000000000008 },
1925    Node { op: Op::Optional, flags: 2, a: 1883, b: 0, first: 0x0000000000000008 },
1926    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1927    Node { op: Op::Optional, flags: 2, a: 1885, b: 0, first: 0x0000000000000008 },
1928    Node { op: Op::Sequence, flags: 0, a: 1218, b: 3, first: 0xffffffffffffffcf },
1929    Node { op: Op::Optional, flags: 2, a: 1887, b: 0, first: 0xffffffffffffffcf },
1930    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1931    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1932    Node { op: Op::Sequence, flags: 0, a: 1221, b: 3, first: 0x0000000000000008 },
1933    Node { op: Op::Sequence, flags: 0, a: 1224, b: 2, first: 0xc000000000000000 },
1934    Node { op: Op::Keyword, flags: 0, a: 173, b: 0, first: 0x8000000000000000 },
1935    Node { op: Op::Keyword, flags: 0, a: 172, b: 0, first: 0x4000000000000000 },
1936    Node { op: Op::Rule, flags: 0, a: 412, b: 1894, first: 0x4000000000000000 },
1937    Node { op: Op::Rule, flags: 0, a: 411, b: 1893, first: 0x8000000000000000 },
1938    Node { op: Op::Choice, flags: 0, a: 1226, b: 2, first: 0xc000000000000000 },
1939    Node { op: Op::Keyword, flags: 0, a: 172, b: 0, first: 0x4000000000000000 },
1940    Node { op: Op::Keyword, flags: 0, a: 394, b: 0, first: 0x0010000000000000 },
1941    Node { op: Op::Rule, flags: 0, a: 407, b: 1867, first: 0xffffffffffffffcf },
1942    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1943    Node { op: Op::Sequence, flags: 0, a: 1228, b: 2, first: 0x0000000000000008 },
1944    Node { op: Op::Repeat, flags: 0, a: 1902, b: 0, first: 0x0000000000000008 },
1945    Node { op: Op::Optional, flags: 2, a: 1903, b: 0, first: 0x0000000000000008 },
1946    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1947    Node { op: Op::Optional, flags: 2, a: 1905, b: 0, first: 0x0000000000000008 },
1948    Node { op: Op::Sequence, flags: 0, a: 1230, b: 3, first: 0xffffffffffffffcf },
1949    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1950    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1951    Node { op: Op::Sequence, flags: 0, a: 1233, b: 3, first: 0x0000000000000008 },
1952    Node { op: Op::Sequence, flags: 0, a: 1236, b: 3, first: 0x4000000000000000 },
1953    Node { op: Op::Keyword, flags: 0, a: 174, b: 0, first: 0x0000000000000040 },
1954    Node { op: Op::Keyword, flags: 0, a: 176, b: 0, first: 0x0000000000000100 },
1955    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
1956    Node { op: Op::Sequence, flags: 0, a: 1239, b: 2, first: 0x0000000000000100 },
1957    Node { op: Op::Keyword, flags: 0, a: 177, b: 0, first: 0x0000000000000200 },
1958    Node { op: Op::Keyword, flags: 0, a: 179, b: 0, first: 0x0000000000000800 },
1959    Node { op: Op::Keyword, flags: 0, a: 180, b: 0, first: 0x0000000000001000 },
1960    Node { op: Op::Choice, flags: 0, a: 1241, b: 2, first: 0x0000000000001800 },
1961    Node { op: Op::Rule, flags: 0, a: 418, b: 1919, first: 0x0000000000001800 },
1962    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
1963    Node { op: Op::Rule, flags: 0, a: 557, b: 2562, first: 0x0000000018000000 },
1964    Node { op: Op::Sequence, flags: 0, a: 1243, b: 3, first: 0x0000000000001800 },
1965    Node { op: Op::Rule, flags: 0, a: 418, b: 1919, first: 0x0000000000001800 },
1966    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
1967    Node { op: Op::Rule, flags: 0, a: 803, b: 3490, first: 0x000000c000000000 },
1968    Node { op: Op::Sequence, flags: 0, a: 1246, b: 3, first: 0x0000000000001800 },
1969    Node { op: Op::Keyword, flags: 0, a: 184, b: 0, first: 0x0000000000010000 },
1970    Node { op: Op::Symbol, flags: 0, a: 8, b: 0, first: 0x0000000000000008 },
1971    Node { op: Op::Choice, flags: 0, a: 1249, b: 2, first: 0x0000000000010008 },
1972    Node { op: Op::Identifier, flags: 0, a: Suggestion::Variable as u32, b: 0, first: 0xffffffffffffffc1 },
1973    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1974    Node { op: Op::Symbol, flags: 0, a: 47, b: 0, first: 0x000000000000000a },
1975    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
1976    Node { op: Op::Sequence, flags: 0, a: 1251, b: 3, first: 0xffffffffffffffc1 },
1977    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1978    Node { op: Op::Symbol, flags: 0, a: 47, b: 0, first: 0x000000000000000a },
1979    Node { op: Op::Sequence, flags: 0, a: 1254, b: 2, first: 0xffffffffffffffc1 },
1980    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1981    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1982    Node { op: Op::Sequence, flags: 0, a: 1256, b: 2, first: 0x0000000000000008 },
1983    Node { op: Op::Repeat, flags: 0, a: 1941, b: 0, first: 0x0000000000000008 },
1984    Node { op: Op::Optional, flags: 2, a: 1942, b: 0, first: 0x0000000000000008 },
1985    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
1986    Node { op: Op::Optional, flags: 2, a: 1944, b: 0, first: 0x0000000000000008 },
1987    Node { op: Op::Sequence, flags: 0, a: 1258, b: 3, first: 0xffffffffffffffc1 },
1988    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
1989    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
1990    Node { op: Op::Sequence, flags: 0, a: 1261, b: 3, first: 0x0000000000000008 },
1991    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1992    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
1993    Node { op: Op::Choice, flags: 0, a: 1264, b: 2, first: 0xffffffffffffffc5 },
1994    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
1995    Node { op: Op::Keyword, flags: 0, a: 182, b: 0, first: 0x0000000000004000 },
1996    Node { op: Op::Keyword, flags: 0, a: 141, b: 0, first: 0x0000000080000000 },
1997    Node { op: Op::Sequence, flags: 0, a: 1266, b: 2, first: 0x0000000000004000 },
1998    Node { op: Op::Keyword, flags: 0, a: 182, b: 0, first: 0x0000000000004000 },
1999    Node { op: Op::Keyword, flags: 0, a: 270, b: 0, first: 0x0000100000000000 },
2000    Node { op: Op::Keyword, flags: 0, a: 141, b: 0, first: 0x0000000080000000 },
2001    Node { op: Op::Sequence, flags: 0, a: 1268, b: 3, first: 0x0000000000004000 },
2002    Node { op: Op::Keyword, flags: 0, a: 183, b: 0, first: 0x0000000000008000 },
2003    Node { op: Op::Keyword, flags: 0, a: 277, b: 0, first: 0x0008000000000000 },
2004    Node { op: Op::Sequence, flags: 0, a: 1271, b: 2, first: 0x0000000000008000 },
2005    Node { op: Op::Rule, flags: 0, a: 430, b: 1963, first: 0x0000000000008000 },
2006    Node { op: Op::Rule, flags: 0, a: 767, b: 3369, first: 0x0000000000040000 },
2007    Node { op: Op::Choice, flags: 0, a: 1273, b: 2, first: 0x0000000000048000 },
2008    Node { op: Op::Keyword, flags: 0, a: 188, b: 0, first: 0x0000000000100000 },
2009    Node { op: Op::Keyword, flags: 0, a: 90, b: 0, first: 0x0000004000000000 },
2010    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
2011    Node { op: Op::Sequence, flags: 0, a: 1275, b: 3, first: 0x0000000000100000 },
2012    Node { op: Op::Keyword, flags: 0, a: 189, b: 0, first: 0x0000000000200000 },
2013    Node { op: Op::Rule, flags: 0, a: 435, b: 1978, first: 0xffffffffffffffcf },
2014    Node { op: Op::Sequence, flags: 0, a: 1278, b: 2, first: 0x0000000000200000 },
2015    Node { op: Op::Rule, flags: 0, a: 645, b: 2874, first: 0xffffffffffffffcf },
2016    Node { op: Op::Rule, flags: 0, a: 436, b: 1989, first: 0x0000000000000008 },
2017    Node { op: Op::Rule, flags: 0, a: 437, b: 1993, first: 0x0000000000000008 },
2018    Node { op: Op::Rule, flags: 0, a: 434, b: 1974, first: 0xffffffffffffffcf },
2019    Node { op: Op::Choice, flags: 0, a: 1280, b: 3, first: 0xffffffffffffffcf },
2020    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2021    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2022    Node { op: Op::Sequence, flags: 0, a: 1283, b: 2, first: 0x0000000000000008 },
2023    Node { op: Op::Repeat, flags: 0, a: 1981, b: 0, first: 0x0000000000000008 },
2024    Node { op: Op::Optional, flags: 2, a: 1982, b: 0, first: 0x0000000000000008 },
2025    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2026    Node { op: Op::Optional, flags: 2, a: 1984, b: 0, first: 0x0000000000000008 },
2027    Node { op: Op::Sequence, flags: 0, a: 1285, b: 3, first: 0xffffffffffffffcf },
2028    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2029    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2030    Node { op: Op::Sequence, flags: 0, a: 1288, b: 3, first: 0x0000000000000008 },
2031    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
2032    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2033    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2034    Node { op: Op::Sequence, flags: 0, a: 1291, b: 3, first: 0x0000000000000008 },
2035    Node { op: Op::Keyword, flags: 0, a: 190, b: 0, first: 0x0000000000400000 },
2036    Node { op: Op::Keyword, flags: 0, a: 277, b: 0, first: 0x0008000000000000 },
2037    Node { op: Op::Sequence, flags: 0, a: 1294, b: 2, first: 0x0000000000400000 },
2038    Node { op: Op::Rule, flags: 0, a: 438, b: 1996, first: 0x0000000000400000 },
2039    Node { op: Op::Rule, flags: 0, a: 311, b: 1479, first: 0x0000000008000000 },
2040    Node { op: Op::Choice, flags: 0, a: 1296, b: 2, first: 0x0000000008400000 },
2041    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2042    Node { op: Op::Rule, flags: 0, a: 239, b: 1136, first: 0x0200000008000001 },
2043    Node { op: Op::Optional, flags: 2, a: 2001, b: 0, first: 0x0200000008000001 },
2044    Node { op: Op::Rule, flags: 0, a: 603, b: 2742, first: 0x0008000000000000 },
2045    Node { op: Op::Optional, flags: 2, a: 2003, b: 0, first: 0x0008000000000000 },
2046    Node { op: Op::Sequence, flags: 0, a: 1298, b: 3, first: 0xffffffffffffffcf },
2047    Node { op: Op::Identifier, flags: 0, a: Suggestion::Variable as u32, b: 0, first: 0xffffffffffffffc1 },
2048    Node { op: Op::Keyword, flags: 0, a: 467, b: 0, first: 0x0000000000000200 },
2049    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
2050    Node { op: Op::Sequence, flags: 0, a: 1301, b: 2, first: 0x0000000000000200 },
2051    Node { op: Op::Rule, flags: 0, a: 89, b: 433, first: 0x0000000000000008 },
2052    Node { op: Op::Rule, flags: 0, a: 266, b: 1225, first: 0x000000000000000a },
2053    Node { op: Op::Rule, flags: 0, a: 880, b: 3790, first: 0x0000000000000008 },
2054    Node { op: Op::Rule, flags: 0, a: 687, b: 3067, first: 0x0000000000000008 },
2055    Node { op: Op::Choice, flags: 0, a: 1303, b: 4, first: 0x000000000000000a },
2056    Node { op: Op::Rule, flags: 0, a: 443, b: 2014, first: 0x000000000000000a },
2057    Node { op: Op::Repeat, flags: 0, a: 2015, b: 0, first: 0x000000000000000a },
2058    Node { op: Op::Symbol, flags: 0, a: 3, b: 0, first: 0x0000000000000008 },
2059    Node { op: Op::Symbol, flags: 0, a: 4, b: 0, first: 0x0000000000000008 },
2060    Node { op: Op::Choice, flags: 0, a: 1307, b: 2, first: 0x0000000000000008 },
2061    Node { op: Op::Keyword, flags: 0, a: 199, b: 0, first: 0x0000000080000000 },
2062    Node { op: Op::Rule, flags: 0, a: 1044, b: 4550, first: 0xffffffffffffffc5 },
2063    Node { op: Op::Rule, flags: 0, a: 925, b: 3999, first: 0xffffffffffffffc5 },
2064    Node { op: Op::Rule, flags: 0, a: 940, b: 4075, first: 0xffffffffffffffcd },
2065    Node { op: Op::Rule, flags: 0, a: 55, b: 294, first: 0xffffffffffffffc5 },
2066    Node { op: Op::Rule, flags: 0, a: 655, b: 2928, first: 0xffffffffffffffcd },
2067    Node { op: Op::Choice, flags: 0, a: 1309, b: 5, first: 0xffffffffffffffcd },
2068    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
2069    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
2070    Node { op: Op::Sequence, flags: 0, a: 1314, b: 2, first: 0x0000000004000000 },
2071    Node { op: Op::Keyword, flags: 0, a: 260, b: 0, first: 0x0000000400000000 },
2072    Node { op: Op::Rule, flags: 0, a: 73, b: 376, first: 0x0000400000000000 },
2073    Node { op: Op::Optional, flags: 2, a: 2031, b: 0, first: 0x0000400000000000 },
2074    Node { op: Op::Symbol, flags: 0, a: 30, b: 0, first: 0x0000000000000008 },
2075    Node { op: Op::Optional, flags: 2, a: 2033, b: 0, first: 0x0000000000000008 },
2076    Node { op: Op::Sequence, flags: 2, a: 1316, b: 2, first: 0x0000400000000008 },
2077    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
2078    Node { op: Op::Rule, flags: 0, a: 449, b: 2030, first: 0x0000000400000000 },
2079    Node { op: Op::Sequence, flags: 0, a: 1318, b: 2, first: 0x0000400000000000 },
2080    Node { op: Op::Keyword, flags: 0, a: 317, b: 0, first: 0x0000000200000000 },
2081    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
2082    Node { op: Op::Rule, flags: 0, a: 452, b: 2039, first: 0x0000000200000000 },
2083    Node { op: Op::Sequence, flags: 0, a: 1320, b: 2, first: 0x0000400000000000 },
2084    Node { op: Op::Rule, flags: 0, a: 134, b: 659, first: 0xffffffffffffffc1 },
2085    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2086    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2087    Node { op: Op::Sequence, flags: 0, a: 1322, b: 3, first: 0x0000000000000008 },
2088    Node { op: Op::Keyword, flags: 0, a: 100, b: 0, first: 0x0001000000000000 },
2089    Node { op: Op::Keyword, flags: 0, a: 473, b: 0, first: 0x0000000000008000 },
2090    Node { op: Op::Sequence, flags: 0, a: 1325, b: 2, first: 0x0001000000000000 },
2091    Node { op: Op::Keyword, flags: 0, a: 203, b: 0, first: 0x0000000800000000 },
2092    Node { op: Op::Rule, flags: 2, a: 457, b: 2057, first: 0x0001400000008008 },
2093    Node { op: Op::Optional, flags: 2, a: 2051, b: 0, first: 0x0001400000008008 },
2094    Node { op: Op::Sequence, flags: 0, a: 1327, b: 2, first: 0x0000000800000000 },
2095    Node { op: Op::Rule, flags: 0, a: 463, b: 2102, first: 0x0000000000008008 },
2096    Node { op: Op::Rule, flags: 0, a: 455, b: 2049, first: 0x0001000000000000 },
2097    Node { op: Op::Rule, flags: 2, a: 450, b: 2035, first: 0x0000400000000008 },
2098    Node { op: Op::Choice, flags: 2, a: 1329, b: 3, first: 0x0001400000008008 },
2099    Node { op: Op::Keyword, flags: 0, a: 290, b: 0, first: 0x0000000000000040 },
2100    Node { op: Op::Keyword, flags: 0, a: 183, b: 0, first: 0x0000000000008000 },
2101    Node { op: Op::Sequence, flags: 0, a: 1332, b: 2, first: 0x0000000000000040 },
2102    Node { op: Op::Keyword, flags: 0, a: 290, b: 0, first: 0x0000000000000040 },
2103    Node { op: Op::Keyword, flags: 0, a: 354, b: 0, first: 0x0000000000001000 },
2104    Node { op: Op::Sequence, flags: 0, a: 1334, b: 2, first: 0x0000000000000040 },
2105    Node { op: Op::Rule, flags: 0, a: 1065, b: 4645, first: 0x0000000400000000 },
2106    Node { op: Op::Optional, flags: 2, a: 2064, b: 0, first: 0x0000000400000000 },
2107    Node { op: Op::Keyword, flags: 0, a: 203, b: 0, first: 0x0000000800000000 },
2108    Node { op: Op::Rule, flags: 0, a: 636, b: 2831, first: 0x0000000000000040 },
2109    Node { op: Op::Optional, flags: 2, a: 2067, b: 0, first: 0x0000000000000040 },
2110    Node { op: Op::Keyword, flags: 0, a: 210, b: 0, first: 0x0000040000000000 },
2111    Node { op: Op::Rule, flags: 0, a: 461, b: 2084, first: 0xffffffffffffffc5 },
2112    Node { op: Op::Rule, flags: 0, a: 73, b: 376, first: 0x0000400000000000 },
2113    Node { op: Op::Optional, flags: 2, a: 2071, b: 0, first: 0x0000400000000000 },
2114    Node { op: Op::Rule, flags: 0, a: 454, b: 2046, first: 0x0000000000000008 },
2115    Node { op: Op::Optional, flags: 2, a: 2073, b: 0, first: 0x0000000000000008 },
2116    Node { op: Op::Rule, flags: 0, a: 462, b: 2087, first: 0x4a4908043a208008 },
2117    Node { op: Op::Rule, flags: 0, a: 617, b: 2786, first: 0x0800000000000000 },
2118    Node { op: Op::Optional, flags: 2, a: 2076, b: 0, first: 0x0800000000000000 },
2119    Node { op: Op::Rule, flags: 0, a: 771, b: 3379, first: 0x0000000000200000 },
2120    Node { op: Op::Optional, flags: 2, a: 2078, b: 0, first: 0x0000000000200000 },
2121    Node { op: Op::Sequence, flags: 0, a: 1336, b: 10, first: 0x0000000c00000000 },
2122    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
2123    Node { op: Op::Rule, flags: 0, a: 448, b: 2029, first: 0x0000000004000000 },
2124    Node { op: Op::Optional, flags: 2, a: 2082, b: 0, first: 0x0000000004000000 },
2125    Node { op: Op::Sequence, flags: 0, a: 1346, b: 2, first: 0xffffffffffffffc5 },
2126    Node { op: Op::Rule, flags: 0, a: 810, b: 3511, first: 0x4a4808043a208008 },
2127    Node { op: Op::Rule, flags: 0, a: 232, b: 1100, first: 0x0001000000000000 },
2128    Node { op: Op::Choice, flags: 0, a: 1348, b: 2, first: 0x4a4908043a208008 },
2129    Node { op: Op::Rule, flags: 0, a: 454, b: 2046, first: 0x0000000000000008 },
2130    Node { op: Op::Optional, flags: 2, a: 2088, b: 0, first: 0x0000000000000008 },
2131    Node { op: Op::Keyword, flags: 0, a: 473, b: 0, first: 0x0000000000008000 },
2132    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2133    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2134    Node { op: Op::Sequence, flags: 0, a: 1350, b: 2, first: 0x0000000000000008 },
2135    Node { op: Op::Repeat, flags: 0, a: 2093, b: 0, first: 0x0000000000000008 },
2136    Node { op: Op::Optional, flags: 2, a: 2094, b: 0, first: 0x0000000000000008 },
2137    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2138    Node { op: Op::Optional, flags: 2, a: 2096, b: 0, first: 0x0000000000000008 },
2139    Node { op: Op::Sequence, flags: 0, a: 1352, b: 3, first: 0xffffffffffffffcf },
2140    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2141    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2142    Node { op: Op::Sequence, flags: 0, a: 1355, b: 3, first: 0x0000000000000008 },
2143    Node { op: Op::Sequence, flags: 0, a: 1358, b: 3, first: 0x0000000000008008 },
2144    Node { op: Op::Keyword, flags: 0, a: 15, b: 0, first: 0x0000000000200000 },
2145    Node { op: Op::Keyword, flags: 0, a: 232, b: 0, first: 0x0000000000000040 },
2146    Node { op: Op::Sequence, flags: 0, a: 1361, b: 2, first: 0x0000000000200000 },
2147    Node { op: Op::Keyword, flags: 0, a: 157, b: 0, first: 0x0000800000000000 },
2148    Node { op: Op::Optional, flags: 2, a: 2106, b: 0, first: 0x0000800000000000 },
2149    Node { op: Op::Keyword, flags: 0, a: 204, b: 0, first: 0x0000001000000000 },
2150    Node { op: Op::Rule, flags: 0, a: 464, b: 2105, first: 0x0000000000200000 },
2151    Node { op: Op::Optional, flags: 2, a: 2109, b: 0, first: 0x0000000000200000 },
2152    Node { op: Op::Rule, flags: 0, a: 426, b: 1952, first: 0xffffffffffffffc5 },
2153    Node { op: Op::Rule, flags: 0, a: 375, b: 1746, first: 0x0008000000000000 },
2154    Node { op: Op::Optional, flags: 2, a: 2112, b: 0, first: 0x0008000000000000 },
2155    Node { op: Op::Rule, flags: 0, a: 1050, b: 4567, first: 0x0000000000800000 },
2156    Node { op: Op::Optional, flags: 2, a: 2114, b: 0, first: 0x0000000000800000 },
2157    Node { op: Op::Sequence, flags: 0, a: 1363, b: 6, first: 0x0000801000000000 },
2158    Node { op: Op::Keyword, flags: 0, a: 206, b: 0, first: 0x0000004000000000 },
2159    Node { op: Op::Keyword, flags: 0, a: 207, b: 0, first: 0x0000008000000000 },
2160    Node { op: Op::Rule, flags: 0, a: 806, b: 3497, first: 0x4a4808003a208008 },
2161    Node { op: Op::Rule, flags: 0, a: 469, b: 2126, first: 0x0000010000000000 },
2162    Node { op: Op::Repeat, flags: 0, a: 2120, b: 0, first: 0x0000010000000000 },
2163    Node { op: Op::Optional, flags: 2, a: 2121, b: 0, first: 0x0000010000000000 },
2164    Node { op: Op::Sequence, flags: 0, a: 1369, b: 2, first: 0x4a4808003a208008 },
2165    Node { op: Op::Rule, flags: 0, a: 835, b: 3599, first: 0x0000010000000000 },
2166    Node { op: Op::Rule, flags: 0, a: 806, b: 3497, first: 0x4a4808003a208008 },
2167    Node { op: Op::Sequence, flags: 0, a: 1371, b: 2, first: 0x0000010000000000 },
2168    Node { op: Op::Rule, flags: 0, a: 476, b: 2168, first: 0x0030030018001800 },
2169    Node { op: Op::Rule, flags: 0, a: 1079, b: 4691, first: 0x0030000000000000 },
2170    Node { op: Op::Rule, flags: 0, a: 559, b: 2569, first: 0x0000000180000000 },
2171    Node { op: Op::Rule, flags: 0, a: 216, b: 1049, first: 0x0000030000000000 },
2172    Node { op: Op::Rule, flags: 0, a: 418, b: 1919, first: 0x0000000000001800 },
2173    Node { op: Op::Rule, flags: 0, a: 557, b: 2562, first: 0x0000000018000000 },
2174    Node { op: Op::Rule, flags: 0, a: 803, b: 3490, first: 0x000000c000000000 },
2175    Node { op: Op::Rule, flags: 0, a: 554, b: 2557, first: 0x0000000006000000 },
2176    Node { op: Op::Rule, flags: 0, a: 552, b: 2551, first: 0x0000000000600000 },
2177    Node { op: Op::Rule, flags: 0, a: 1052, b: 4571, first: 0x0000000030000000 },
2178    Node { op: Op::Rule, flags: 0, a: 714, b: 3174, first: 0x0018000000000000 },
2179    Node { op: Op::Rule, flags: 0, a: 223, b: 1074, first: 0x0000300000000000 },
2180    Node { op: Op::Rule, flags: 0, a: 101, b: 475, first: 0x0180000000000000 },
2181    Node { op: Op::Rule, flags: 0, a: 553, b: 2554, first: 0x0000000001800000 },
2182    Node { op: Op::Choice, flags: 0, a: 1373, b: 14, first: 0x01b833c1bfe01800 },
2183    Node { op: Op::Rule, flags: 0, a: 481, b: 2209, first: 0x0000020000000000 },
2184    Node { op: Op::Rule, flags: 0, a: 482, b: 2210, first: 0x0000020000000000 },
2185    Node { op: Op::Choice, flags: 0, a: 1387, b: 2, first: 0x0000020000000000 },
2186    Node { op: Op::Keyword, flags: 0, a: 209, b: 0, first: 0x0000020000000000 },
2187    Node { op: Op::Rule, flags: 0, a: 474, b: 2159, first: 0x000000000000000e },
2188    Node { op: Op::Rule, flags: 0, a: 470, b: 2141, first: 0x01b833c1bfe01800 },
2189    Node { op: Op::Optional, flags: 2, a: 2147, b: 0, first: 0x01b833c1bfe01800 },
2190    Node { op: Op::Sequence, flags: 0, a: 1389, b: 3, first: 0x0000020000000000 },
2191    Node { op: Op::Keyword, flags: 0, a: 209, b: 0, first: 0x0000020000000000 },
2192    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
2193    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2194    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2195    Node { op: Op::Sequence, flags: 0, a: 1392, b: 3, first: 0x0000000000000008 },
2196    Node { op: Op::Sequence, flags: 0, a: 1395, b: 2, first: 0x0000020000000000 },
2197    Node { op: Op::Rule, flags: 0, a: 475, b: 2160, first: 0x0000000000000004 },
2198    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
2199    Node { op: Op::Rule, flags: 0, a: 653, b: 2913, first: 0x0000000000000008 },
2200    Node { op: Op::Choice, flags: 0, a: 1397, b: 3, first: 0x000000000000000e },
2201    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
2202    Node { op: Op::Rule, flags: 0, a: 1080, b: 4695, first: 0x0030000000000000 },
2203    Node { op: Op::Rule, flags: 0, a: 217, b: 1053, first: 0x0000030000000000 },
2204    Node { op: Op::Rule, flags: 0, a: 218, b: 1057, first: 0x0000030000000000 },
2205    Node { op: Op::Rule, flags: 0, a: 219, b: 1061, first: 0x0000030000000000 },
2206    Node { op: Op::Rule, flags: 0, a: 419, b: 1923, first: 0x0000000000001800 },
2207    Node { op: Op::Rule, flags: 0, a: 420, b: 1927, first: 0x0000000000001800 },
2208    Node { op: Op::Rule, flags: 0, a: 558, b: 2566, first: 0x0000000018000000 },
2209    Node { op: Op::Choice, flags: 0, a: 1400, b: 7, first: 0x0030030018001800 },
2210    Node { op: Op::Rule, flags: 0, a: 1079, b: 4691, first: 0x0030000000000000 },
2211    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
2212    Node { op: Op::Rule, flags: 0, a: 559, b: 2569, first: 0x0000000180000000 },
2213    Node { op: Op::Sequence, flags: 0, a: 1407, b: 3, first: 0x0030000000000000 },
2214    Node { op: Op::Rule, flags: 0, a: 216, b: 1049, first: 0x0000030000000000 },
2215    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
2216    Node { op: Op::Rule, flags: 0, a: 418, b: 1919, first: 0x0000000000001800 },
2217    Node { op: Op::Sequence, flags: 0, a: 1410, b: 3, first: 0x0000030000000000 },
2218    Node { op: Op::Rule, flags: 0, a: 216, b: 1049, first: 0x0000030000000000 },
2219    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
2220    Node { op: Op::Rule, flags: 0, a: 557, b: 2562, first: 0x0000000018000000 },
2221    Node { op: Op::Sequence, flags: 0, a: 1413, b: 3, first: 0x0000030000000000 },
2222    Node { op: Op::Rule, flags: 0, a: 216, b: 1049, first: 0x0000030000000000 },
2223    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
2224    Node { op: Op::Rule, flags: 0, a: 803, b: 3490, first: 0x000000c000000000 },
2225    Node { op: Op::Sequence, flags: 0, a: 1416, b: 3, first: 0x0000030000000000 },
2226    Node { op: Op::Rule, flags: 0, a: 418, b: 1919, first: 0x0000000000001800 },
2227    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
2228    Node { op: Op::Rule, flags: 0, a: 557, b: 2562, first: 0x0000000018000000 },
2229    Node { op: Op::Sequence, flags: 0, a: 1419, b: 3, first: 0x0000000000001800 },
2230    Node { op: Op::Rule, flags: 0, a: 418, b: 1919, first: 0x0000000000001800 },
2231    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
2232    Node { op: Op::Rule, flags: 0, a: 803, b: 3490, first: 0x000000c000000000 },
2233    Node { op: Op::Sequence, flags: 0, a: 1422, b: 3, first: 0x0000000000001800 },
2234    Node { op: Op::Rule, flags: 0, a: 557, b: 2562, first: 0x0000000018000000 },
2235    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
2236    Node { op: Op::Rule, flags: 0, a: 803, b: 3490, first: 0x000000c000000000 },
2237    Node { op: Op::Sequence, flags: 0, a: 1425, b: 3, first: 0x0000000018000000 },
2238    Node { op: Op::Choice, flags: 0, a: 1428, b: 7, first: 0x0030030018001800 },
2239    Node { op: Op::Rule, flags: 0, a: 471, b: 2144, first: 0x0000020000000000 },
2240    Node { op: Op::Rule, flags: 0, a: 473, b: 2155, first: 0x0000020000000000 },
2241    Node { op: Op::Choice, flags: 0, a: 1435, b: 2, first: 0x0000020000000000 },
2242    Node { op: Op::Keyword, flags: 0, a: 209, b: 0, first: 0x0000020000000000 },
2243    Node { op: Op::Rule, flags: 0, a: 477, b: 2197, first: 0x0030030018001800 },
2244    Node { op: Op::Sequence, flags: 0, a: 1437, b: 2, first: 0x0000020000000000 },
2245    Node { op: Op::Keyword, flags: 0, a: 209, b: 0, first: 0x0000020000000000 },
2246    Node { op: Op::Rule, flags: 0, a: 470, b: 2141, first: 0x01b833c1bfe01800 },
2247    Node { op: Op::Sequence, flags: 0, a: 1439, b: 2, first: 0x0000020000000000 },
2248    Node { op: Op::Rule, flags: 0, a: 479, b: 2203, first: 0x0000020000000000 },
2249    Node { op: Op::Rule, flags: 0, a: 480, b: 2206, first: 0x0000020000000000 },
2250    Node { op: Op::Choice, flags: 0, a: 1441, b: 2, first: 0x0000020000000000 },
2251    Node { op: Op::Keyword, flags: 0, a: 209, b: 0, first: 0x0000020000000000 },
2252    Node { op: Op::Keyword, flags: 0, a: 210, b: 0, first: 0x0000040000000000 },
2253    Node { op: Op::Keyword, flags: 0, a: 260, b: 0, first: 0x0000000400000000 },
2254    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
2255    Node { op: Op::Rule, flags: 0, a: 1041, b: 4523, first: 0x000000000000c000 },
2256    Node { op: Op::Rule, flags: 0, a: 634, b: 2825, first: 0xffffffffffffffcd },
2257    Node { op: Op::Sequence, flags: 0, a: 1443, b: 5, first: 0x0000040000000000 },
2258    Node { op: Op::Rule, flags: 0, a: 156, b: 727, first: 0xffffffffffffffcf },
2259    Node { op: Op::Rule, flags: 0, a: 486, b: 2230, first: 0x0000100000000000 },
2260    Node { op: Op::Repeat, flags: 0, a: 2218, b: 0, first: 0x0000100000000000 },
2261    Node { op: Op::Optional, flags: 2, a: 2219, b: 0, first: 0x0000100000000000 },
2262    Node { op: Op::Sequence, flags: 0, a: 1448, b: 2, first: 0xffffffffffffffcf },
2263    Node { op: Op::Keyword, flags: 0, a: 212, b: 0, first: 0x0000100000000000 },
2264    Node { op: Op::Keyword, flags: 0, a: 270, b: 0, first: 0x0000100000000000 },
2265    Node { op: Op::Optional, flags: 2, a: 2223, b: 0, first: 0x0000100000000000 },
2266    Node { op: Op::Keyword, flags: 0, a: 119, b: 0, first: 0x0000000000000200 },
2267    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
2268    Node { op: Op::Sequence, flags: 0, a: 1450, b: 4, first: 0x0000100000000000 },
2269    Node { op: Op::Rule, flags: 0, a: 485, b: 2227, first: 0x0000100000000000 },
2270    Node { op: Op::Rule, flags: 0, a: 156, b: 727, first: 0xffffffffffffffcf },
2271    Node { op: Op::Sequence, flags: 0, a: 1454, b: 2, first: 0x0000100000000000 },
2272    Node { op: Op::Rule, flags: 0, a: 484, b: 2221, first: 0xffffffffffffffcf },
2273    Node { op: Op::Rule, flags: 0, a: 492, b: 2251, first: 0x0000b00000000000 },
2274    Node { op: Op::Repeat, flags: 0, a: 2232, b: 0, first: 0x0000b00000000000 },
2275    Node { op: Op::Optional, flags: 2, a: 2233, b: 0, first: 0x0000b00000000000 },
2276    Node { op: Op::Sequence, flags: 0, a: 1456, b: 2, first: 0xffffffffffffffcf },
2277    Node { op: Op::Keyword, flags: 0, a: 212, b: 0, first: 0x0000100000000000 },
2278    Node { op: Op::Keyword, flags: 0, a: 270, b: 0, first: 0x0000100000000000 },
2279    Node { op: Op::Optional, flags: 2, a: 2237, b: 0, first: 0x0000100000000000 },
2280    Node { op: Op::Rule, flags: 0, a: 489, b: 2245, first: 0x0402208000000000 },
2281    Node { op: Op::Sequence, flags: 0, a: 1458, b: 3, first: 0x0000100000000000 },
2282    Node { op: Op::Rule, flags: 0, a: 984, b: 4232, first: 0x0000200000000000 },
2283    Node { op: Op::Rule, flags: 0, a: 344, b: 1631, first: 0x0000008000000000 },
2284    Node { op: Op::Rule, flags: 0, a: 601, b: 2736, first: 0x0002000000000000 },
2285    Node { op: Op::Rule, flags: 0, a: 1002, b: 4317, first: 0x0400000000000000 },
2286    Node { op: Op::Choice, flags: 0, a: 1461, b: 4, first: 0x0402208000000000 },
2287    Node { op: Op::Rule, flags: 0, a: 491, b: 2247, first: 0x0000200000000000 },
2288    Node { op: Op::Keyword, flags: 0, a: 213, b: 0, first: 0x0000200000000000 },
2289    Node { op: Op::Rule, flags: 0, a: 488, b: 2240, first: 0x0000100000000000 },
2290    Node { op: Op::Rule, flags: 0, a: 590, b: 2707, first: 0x0000900000000000 },
2291    Node { op: Op::Rule, flags: 0, a: 490, b: 2246, first: 0x0000200000000000 },
2292    Node { op: Op::Choice, flags: 0, a: 1465, b: 3, first: 0x0000b00000000000 },
2293    Node { op: Op::Keyword, flags: 0, a: 215, b: 0, first: 0x0000800000000000 },
2294    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
2295    Node { op: Op::Keyword, flags: 0, a: 451, b: 0, first: 0x0008000000000000 },
2296    Node { op: Op::Rule, flags: 0, a: 119, b: 584, first: 0xffffffffffffffc1 },
2297    Node { op: Op::Sequence, flags: 0, a: 1468, b: 2, first: 0x0008000000000000 },
2298    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2299    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2300    Node { op: Op::Sequence, flags: 0, a: 1470, b: 3, first: 0x0000000000000008 },
2301    Node { op: Op::Rule, flags: 0, a: 936, b: 4060, first: 0xffffffffffffffcd },
2302    Node { op: Op::Rule, flags: 0, a: 497, b: 2278, first: 0x0800000000000200 },
2303    Node { op: Op::Sequence, flags: 0, a: 1473, b: 5, first: 0x0000800000000000 },
2304    Node { op: Op::Rule, flags: 0, a: 493, b: 2262, first: 0x0000800000000000 },
2305    Node { op: Op::Rule, flags: 0, a: 731, b: 3230, first: 0x08109000a1400000 },
2306    Node { op: Op::Rule, flags: 0, a: 499, b: 2289, first: 0x0000002480000000 },
2307    Node { op: Op::Rule, flags: 0, a: 575, b: 2653, first: 0x0810900081400000 },
2308    Node { op: Op::Choice, flags: 0, a: 1478, b: 4, first: 0x08109024a1400000 },
2309    Node { op: Op::Rule, flags: 0, a: 494, b: 2267, first: 0x08109024a1400000 },
2310    Node { op: Op::Rule, flags: 0, a: 933, b: 4045, first: 0x0000000008000000 },
2311    Node { op: Op::Rule, flags: 0, a: 941, b: 4085, first: 0x4000000000000000 },
2312    Node { op: Op::Choice, flags: 0, a: 1482, b: 3, first: 0x48109024a9400000 },
2313    Node { op: Op::Rule, flags: 0, a: 209, b: 1025, first: 0x0000000080000000 },
2314    Node { op: Op::Rule, flags: 0, a: 567, b: 2609, first: 0x0000002000000000 },
2315    Node { op: Op::Rule, flags: 0, a: 686, b: 3066, first: 0x0000000400000000 },
2316    Node { op: Op::Choice, flags: 0, a: 1485, b: 3, first: 0x0000002480000000 },
2317    Node { op: Op::Rule, flags: 0, a: 615, b: 2777, first: 0x0800000000000000 },
2318    Node { op: Op::Rule, flags: 0, a: 1032, b: 4472, first: 0x0000000000000200 },
2319    Node { op: Op::Choice, flags: 0, a: 1488, b: 2, first: 0x0800000000000200 },
2320    Node { op: Op::Rule, flags: 0, a: 378, b: 1756, first: 0x0010000000000000 },
2321    Node { op: Op::Rule, flags: 0, a: 506, b: 2323, first: 0x0800000000000000 },
2322    Node { op: Op::Rule, flags: 0, a: 772, b: 3383, first: 0x0000000001000000 },
2323    Node { op: Op::Rule, flags: 0, a: 817, b: 3538, first: 0x0000100000000000 },
2324    Node { op: Op::Rule, flags: 0, a: 29, b: 150, first: 0x0000000000400000 },
2325    Node { op: Op::Rule, flags: 0, a: 446, b: 2020, first: 0x0000000080000000 },
2326    Node { op: Op::Choice, flags: 0, a: 1490, b: 6, first: 0x0810100081400000 },
2327    Node { op: Op::Rule, flags: 0, a: 496, b: 2275, first: 0x0000002480000000 },
2328    Node { op: Op::Keyword, flags: 0, a: 215, b: 0, first: 0x0000800000000000 },
2329    Node { op: Op::Rule, flags: 0, a: 447, b: 2026, first: 0xffffffffffffffcd },
2330    Node { op: Op::Sequence, flags: 0, a: 1496, b: 3, first: 0x0000002480000000 },
2331    Node { op: Op::Symbol, flags: 0, a: 5, b: 0, first: 0x0000000000000008 },
2332    Node { op: Op::Rule, flags: 0, a: 583, b: 2688, first: 0x0000040000000000 },
2333    Node { op: Op::Rule, flags: 0, a: 769, b: 3371, first: 0x0000000000100000 },
2334    Node { op: Op::Rule, flags: 0, a: 82, b: 402, first: 0x0004000000000000 },
2335    Node { op: Op::Rule, flags: 0, a: 836, b: 3602, first: 0x0004000000000000 },
2336    Node { op: Op::Rule, flags: 0, a: 834, b: 3595, first: 0x0004000000000000 },
2337    Node { op: Op::Choice, flags: 0, a: 1499, b: 5, first: 0x0004040000100000 },
2338    Node { op: Op::Rule, flags: 0, a: 1013, b: 4362, first: 0x0800000000000000 },
2339    Node { op: Op::Optional, flags: 2, a: 2297, b: 0, first: 0x0800000000000000 },
2340    Node { op: Op::Rule, flags: 0, a: 233, b: 1104, first: 0x0800000000000000 },
2341    Node { op: Op::Optional, flags: 2, a: 2299, b: 0, first: 0x0800000000000000 },
2342    Node { op: Op::Sequence, flags: 2, a: 1504, b: 2, first: 0x0800000000000000 },
2343    Node { op: Op::Rule, flags: 0, a: 528, b: 2423, first: 0xffffffffffffffcf },
2344    Node { op: Op::Rule, flags: 0, a: 873, b: 3749, first: 0x0000000000000008 },
2345    Node { op: Op::Repeat, flags: 0, a: 2303, b: 0, first: 0x0000000000000008 },
2346    Node { op: Op::Optional, flags: 2, a: 2304, b: 0, first: 0x0000000000000008 },
2347    Node { op: Op::Sequence, flags: 0, a: 1506, b: 2, first: 0xffffffffffffffcf },
2348    Node { op: Op::Keyword, flags: 0, a: 220, b: 0, first: 0x0010000000000000 },
2349    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
2350    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2351    Node { op: Op::Sequence, flags: 0, a: 1508, b: 2, first: 0x0000000000000008 },
2352    Node { op: Op::Repeat, flags: 0, a: 2310, b: 0, first: 0x0000000000000008 },
2353    Node { op: Op::Optional, flags: 2, a: 2311, b: 0, first: 0x0000000000000008 },
2354    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2355    Node { op: Op::Optional, flags: 2, a: 2313, b: 0, first: 0x0000000000000008 },
2356    Node { op: Op::Sequence, flags: 0, a: 1510, b: 3, first: 0xffffffffffffffc5 },
2357    Node { op: Op::Symbol, flags: 0, a: 48, b: 0, first: 0x0000000000000008 },
2358    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2359    Node { op: Op::Sequence, flags: 0, a: 1513, b: 4, first: 0x0010000000000000 },
2360    Node { op: Op::Keyword, flags: 0, a: 224, b: 0, first: 0x0100000000000000 },
2361    Node { op: Op::Keyword, flags: 0, a: 227, b: 0, first: 0x0800000000000000 },
2362    Node { op: Op::Keyword, flags: 0, a: 295, b: 0, first: 0x0000000000000800 },
2363    Node { op: Op::Optional, flags: 2, a: 2321, b: 0, first: 0x0000000000000800 },
2364    Node { op: Op::Sequence, flags: 0, a: 1517, b: 2, first: 0x0800000000000000 },
2365    Node { op: Op::Rule, flags: 0, a: 509, b: 2342, first: 0x2280000000010008 },
2366    Node { op: Op::Rule, flags: 0, a: 645, b: 2874, first: 0xffffffffffffffcf },
2367    Node { op: Op::Rule, flags: 0, a: 300, b: 1446, first: 0x0000000000800000 },
2368    Node { op: Op::Optional, flags: 2, a: 2326, b: 0, first: 0x0000000000800000 },
2369    Node { op: Op::Sequence, flags: 0, a: 1519, b: 3, first: 0x2280000000010008 },
2370    Node { op: Op::Keyword, flags: 0, a: 229, b: 0, first: 0x2000000000000000 },
2371    Node { op: Op::Symbol, flags: 0, a: 27, b: 0, first: 0x0000000000000008 },
2372    Node { op: Op::Choice, flags: 0, a: 1522, b: 2, first: 0x2000000000000008 },
2373    Node { op: Op::Rule, flags: 0, a: 867, b: 3713, first: 0x0080000000000000 },
2374    Node { op: Op::Rule, flags: 0, a: 728, b: 3212, first: 0x0000000000000008 },
2375    Node { op: Op::Rule, flags: 0, a: 729, b: 3213, first: 0x0000000000000008 },
2376    Node { op: Op::Rule, flags: 0, a: 421, b: 1930, first: 0x0000000000010008 },
2377    Node { op: Op::Rule, flags: 0, a: 508, b: 2331, first: 0x2000000000000008 },
2378    Node { op: Op::Rule, flags: 0, a: 402, b: 1855, first: 0x0200000000000008 },
2379    Node { op: Op::Rule, flags: 0, a: 586, b: 2692, first: 0x0000000000000008 },
2380    Node { op: Op::Rule, flags: 0, a: 588, b: 2694, first: 0x0000000000000008 },
2381    Node { op: Op::Rule, flags: 0, a: 595, b: 2718, first: 0x0000000000000008 },
2382    Node { op: Op::Rule, flags: 0, a: 596, b: 2719, first: 0x0000000000000008 },
2383    Node { op: Op::Choice, flags: 0, a: 1524, b: 10, first: 0x2280000000010008 },
2384    Node { op: Op::Keyword, flags: 0, a: 9, b: 0, first: 0x0000000000008000 },
2385    Node { op: Op::Keyword, flags: 0, a: 230, b: 0, first: 0x4000000000000000 },
2386    Node { op: Op::Rule, flags: 0, a: 516, b: 2366, first: 0xffffffffffffffcf },
2387    Node { op: Op::Sequence, flags: 0, a: 1534, b: 2, first: 0x4000000000000000 },
2388    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2389    Node { op: Op::Symbol, flags: 0, a: 32, b: 0, first: 0x0000000000000008 },
2390    Node { op: Op::Optional, flags: 2, a: 2348, b: 0, first: 0x0000000000000008 },
2391    Node { op: Op::Sequence, flags: 0, a: 1536, b: 2, first: 0xffffffffffffffcf },
2392    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
2393    Node { op: Op::Keyword, flags: 0, a: 309, b: 0, first: 0x0000000002000000 },
2394    Node { op: Op::Sequence, flags: 0, a: 1538, b: 2, first: 0x0000000000000002 },
2395    Node { op: Op::Rule, flags: 0, a: 515, b: 2362, first: 0x4000000000000000 },
2396    Node { op: Op::Rule, flags: 0, a: 610, b: 2762, first: 0x0100000000000000 },
2397    Node { op: Op::Rule, flags: 0, a: 611, b: 2766, first: 0x0100000000000000 },
2398    Node { op: Op::Rule, flags: 0, a: 346, b: 1638, first: 0x0000020000000000 },
2399    Node { op: Op::Choice, flags: 0, a: 1540, b: 4, first: 0x4100020000000000 },
2400    Node { op: Op::Rule, flags: 0, a: 511, b: 2346, first: 0x4000000000000000 },
2401    Node { op: Op::Rule, flags: 0, a: 609, b: 2759, first: 0x0100000000000000 },
2402    Node { op: Op::Optional, flags: 2, a: 2360, b: 0, first: 0x0100000000000000 },
2403    Node { op: Op::Sequence, flags: 0, a: 1544, b: 2, first: 0x4000000000000000 },
2404    Node { op: Op::Rule, flags: 0, a: 510, b: 2343, first: 0x0000000000008000 },
2405    Node { op: Op::Rule, flags: 0, a: 513, b: 2353, first: 0x0000000000000002 },
2406    Node { op: Op::Rule, flags: 0, a: 512, b: 2350, first: 0xffffffffffffffcf },
2407    Node { op: Op::Choice, flags: 0, a: 1546, b: 3, first: 0xffffffffffffffcf },
2408    Node { op: Op::Symbol, flags: 0, a: 44, b: 0, first: 0x0000000000000008 },
2409    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2410    Node { op: Op::Keyword, flags: 0, a: 156, b: 0, first: 0x0000400000000000 },
2411    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
2412    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2413    Node { op: Op::Sequence, flags: 0, a: 1549, b: 2, first: 0x0000000000000008 },
2414    Node { op: Op::Repeat, flags: 0, a: 2372, b: 0, first: 0x0000000000000008 },
2415    Node { op: Op::Optional, flags: 2, a: 2373, b: 0, first: 0x0000000000000008 },
2416    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2417    Node { op: Op::Optional, flags: 2, a: 2375, b: 0, first: 0x0000000000000008 },
2418    Node { op: Op::Sequence, flags: 0, a: 1551, b: 3, first: 0xffffffffffffffc5 },
2419    Node { op: Op::Keyword, flags: 0, a: 189, b: 0, first: 0x0000000000200000 },
2420    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2421    Node { op: Op::Rule, flags: 0, a: 518, b: 2386, first: 0x0000000000004000 },
2422    Node { op: Op::Optional, flags: 2, a: 2380, b: 0, first: 0x0000000000004000 },
2423    Node { op: Op::Symbol, flags: 0, a: 45, b: 0, first: 0x0000000000000008 },
2424    Node { op: Op::Sequence, flags: 0, a: 1554, b: 8, first: 0x0000000000000008 },
2425    Node { op: Op::Keyword, flags: 0, a: 182, b: 0, first: 0x0000000000004000 },
2426    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2427    Node { op: Op::Sequence, flags: 0, a: 1562, b: 2, first: 0x0000000000004000 },
2428    Node { op: Op::Rule, flags: 0, a: 35, b: 204, first: 0x0000000002000008 },
2429    Node { op: Op::Rule, flags: 0, a: 39, b: 218, first: 0x0000000002000000 },
2430    Node { op: Op::Choice, flags: 0, a: 1564, b: 2, first: 0x0000000002000008 },
2431    Node { op: Op::Symbol, flags: 0, a: 14, b: 0, first: 0x0000000000000008 },
2432    Node { op: Op::Symbol, flags: 0, a: 15, b: 0, first: 0x0000000000000008 },
2433    Node { op: Op::Symbol, flags: 0, a: 16, b: 0, first: 0x0000000000000008 },
2434    Node { op: Op::Choice, flags: 0, a: 1566, b: 3, first: 0x0000000000000008 },
2435    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
2436    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
2437    Node { op: Op::Rule, flags: 0, a: 160, b: 747, first: 0x0002208000000000 },
2438    Node { op: Op::Choice, flags: 0, a: 1569, b: 3, first: 0x0002208000000006 },
2439    Node { op: Op::Keyword, flags: 0, a: 232, b: 0, first: 0x0000000000000040 },
2440    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
2441    Node { op: Op::Rule, flags: 0, a: 375, b: 1746, first: 0x0008000000000000 },
2442    Node { op: Op::Optional, flags: 2, a: 2400, b: 0, first: 0x0008000000000000 },
2443    Node { op: Op::Rule, flags: 0, a: 332, b: 1585, first: 0x0000000004000000 },
2444    Node { op: Op::Optional, flags: 2, a: 2402, b: 0, first: 0x0000000004000000 },
2445    Node { op: Op::Sequence, flags: 0, a: 1572, b: 4, first: 0x0000000000000040 },
2446    Node { op: Op::Keyword, flags: 0, a: 233, b: 0, first: 0x0000000000000080 },
2447    Node { op: Op::Keyword, flags: 0, a: 233, b: 0, first: 0x0000000000000080 },
2448    Node { op: Op::Rule, flags: 0, a: 527, b: 2418, first: 0xffffffffffffffcf },
2449    Node { op: Op::Rule, flags: 0, a: 526, b: 2414, first: 0x0000000000200000 },
2450    Node { op: Op::Repeat, flags: 0, a: 2408, b: 0, first: 0x0000000000200000 },
2451    Node { op: Op::Optional, flags: 2, a: 2409, b: 0, first: 0x0000000000200000 },
2452    Node { op: Op::Sequence, flags: 0, a: 1576, b: 2, first: 0xffffffffffffffcf },
2453    Node { op: Op::Keyword, flags: 0, a: 15, b: 0, first: 0x0000000000200000 },
2454    Node { op: Op::Rule, flags: 0, a: 527, b: 2418, first: 0xffffffffffffffcf },
2455    Node { op: Op::Sequence, flags: 0, a: 1578, b: 2, first: 0x0000000000200000 },
2456    Node { op: Op::Rule, flags: 0, a: 585, b: 2691, first: 0x0000100000000000 },
2457    Node { op: Op::Optional, flags: 2, a: 2415, b: 0, first: 0x0000100000000000 },
2458    Node { op: Op::Rule, flags: 0, a: 487, b: 2235, first: 0xffffffffffffffcf },
2459    Node { op: Op::Sequence, flags: 0, a: 1580, b: 2, first: 0xffffffffffffffcf },
2460    Node { op: Op::Rule, flags: 0, a: 525, b: 2411, first: 0xffffffffffffffcf },
2461    Node { op: Op::Rule, flags: 0, a: 529, b: 2426, first: 0x0000000000000040 },
2462    Node { op: Op::Repeat, flags: 0, a: 2420, b: 0, first: 0x0000000000000040 },
2463    Node { op: Op::Optional, flags: 2, a: 2421, b: 0, first: 0x0000000000000040 },
2464    Node { op: Op::Sequence, flags: 0, a: 1582, b: 2, first: 0xffffffffffffffcf },
2465    Node { op: Op::Keyword, flags: 0, a: 290, b: 0, first: 0x0000000000000040 },
2466    Node { op: Op::Rule, flags: 0, a: 525, b: 2411, first: 0xffffffffffffffcf },
2467    Node { op: Op::Sequence, flags: 0, a: 1584, b: 2, first: 0x0000000000000040 },
2468    Node { op: Op::Rule, flags: 0, a: 535, b: 2452, first: 0xffffffffffffffc1 },
2469    Node { op: Op::Optional, flags: 2, a: 2427, b: 0, first: 0xffffffffffffffc1 },
2470    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2471    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2472    Node { op: Op::Sequence, flags: 0, a: 1586, b: 3, first: 0x0000000000000008 },
2473    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
2474    Node { op: Op::Rule, flags: 0, a: 531, b: 2437, first: 0xffffffffffffffcf },
2475    Node { op: Op::Sequence, flags: 0, a: 1589, b: 3, first: 0x0000000000000008 },
2476    Node { op: Op::Rule, flags: 0, a: 930, b: 4032, first: 0x0000000002000000 },
2477    Node { op: Op::Rule, flags: 0, a: 792, b: 3460, first: 0xffffffffffffffcf },
2478    Node { op: Op::Choice, flags: 0, a: 1592, b: 2, first: 0xffffffffffffffcf },
2479    Node { op: Op::Keyword, flags: 0, a: 238, b: 0, first: 0x0000000000001000 },
2480    Node { op: Op::Rule, flags: 0, a: 532, b: 2438, first: 0x0000000000001000 },
2481    Node { op: Op::Rule, flags: 0, a: 386, b: 1797, first: 0x0020000000000000 },
2482    Node { op: Op::Choice, flags: 0, a: 1594, b: 2, first: 0x0020000000001000 },
2483    Node { op: Op::Rule, flags: 0, a: 565, b: 2602, first: 0xffffffffffffffc1 },
2484    Node { op: Op::Rule, flags: 0, a: 869, b: 3725, first: 0xffffffffffffffc1 },
2485    Node { op: Op::Choice, flags: 0, a: 1596, b: 2, first: 0xffffffffffffffc1 },
2486    Node { op: Op::Rule, flags: 0, a: 534, b: 2444, first: 0xffffffffffffffc1 },
2487    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2488    Node { op: Op::Sequence, flags: 0, a: 1598, b: 2, first: 0x0000000000000008 },
2489    Node { op: Op::Repeat, flags: 0, a: 2447, b: 0, first: 0x0000000000000008 },
2490    Node { op: Op::Optional, flags: 2, a: 2448, b: 0, first: 0x0000000000000008 },
2491    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2492    Node { op: Op::Optional, flags: 2, a: 2450, b: 0, first: 0x0000000000000008 },
2493    Node { op: Op::Sequence, flags: 0, a: 1600, b: 3, first: 0xffffffffffffffc1 },
2494    Node { op: Op::Keyword, flags: 0, a: 239, b: 0, first: 0x0000000000002000 },
2495    Node { op: Op::Rule, flags: 0, a: 537, b: 2467, first: 0x0000000000000008 },
2496    Node { op: Op::Sequence, flags: 0, a: 1603, b: 2, first: 0x0000000000002000 },
2497    Node { op: Op::Symbol, flags: 0, a: 50, b: 0, first: 0x0000000000000008 },
2498    Node { op: Op::Rule, flags: 0, a: 538, b: 2471, first: 0xffffffffffffffcf },
2499    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2500    Node { op: Op::Sequence, flags: 0, a: 1605, b: 2, first: 0x0000000000000008 },
2501    Node { op: Op::Repeat, flags: 0, a: 2459, b: 0, first: 0x0000000000000008 },
2502    Node { op: Op::Optional, flags: 2, a: 2460, b: 0, first: 0x0000000000000008 },
2503    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2504    Node { op: Op::Optional, flags: 2, a: 2462, b: 0, first: 0x0000000000000008 },
2505    Node { op: Op::Sequence, flags: 0, a: 1607, b: 3, first: 0xffffffffffffffcf },
2506    Node { op: Op::Optional, flags: 2, a: 2464, b: 0, first: 0xffffffffffffffcf },
2507    Node { op: Op::Symbol, flags: 0, a: 51, b: 0, first: 0x0000000000000008 },
2508    Node { op: Op::Sequence, flags: 0, a: 1610, b: 3, first: 0x0000000000000008 },
2509    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2510    Node { op: Op::Symbol, flags: 0, a: 48, b: 0, first: 0x0000000000000008 },
2511    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2512    Node { op: Op::Sequence, flags: 0, a: 1613, b: 3, first: 0xffffffffffffffcf },
2513    Node { op: Op::Keyword, flags: 0, a: 239, b: 0, first: 0x0000000000002000 },
2514    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
2515    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2516    Node { op: Op::Sequence, flags: 0, a: 1616, b: 2, first: 0x0000000000000008 },
2517    Node { op: Op::Repeat, flags: 0, a: 2475, b: 0, first: 0x0000000000000008 },
2518    Node { op: Op::Optional, flags: 2, a: 2476, b: 0, first: 0x0000000000000008 },
2519    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2520    Node { op: Op::Optional, flags: 2, a: 2478, b: 0, first: 0x0000000000000008 },
2521    Node { op: Op::Sequence, flags: 0, a: 1618, b: 3, first: 0xffffffffffffffc1 },
2522    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2523    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2524    Node { op: Op::Sequence, flags: 0, a: 1621, b: 3, first: 0x0000000000000008 },
2525    Node { op: Op::Optional, flags: 2, a: 2483, b: 0, first: 0x0000000000000008 },
2526    Node { op: Op::Sequence, flags: 0, a: 1624, b: 2, first: 0x0000000000002000 },
2527    Node { op: Op::Keyword, flags: 0, a: 488, b: 0, first: 0x0000000040000000 },
2528    Node { op: Op::Keyword, flags: 0, a: 242, b: 0, first: 0x0000000000010000 },
2529    Node { op: Op::Rule, flags: 0, a: 27, b: 148, first: 0x0000000000200000 },
2530    Node { op: Op::Optional, flags: 2, a: 2488, b: 0, first: 0x0000000000200000 },
2531    Node { op: Op::Keyword, flags: 0, a: 434, b: 0, first: 0x0000000400000000 },
2532    Node { op: Op::Rule, flags: 0, a: 541, b: 2498, first: 0x0020000800400440 },
2533    Node { op: Op::Sequence, flags: 0, a: 1626, b: 5, first: 0x0000000040000000 },
2534    Node { op: Op::Rule, flags: 0, a: 1017, b: 4386, first: 0x0000000000000040 },
2535    Node { op: Op::Rule, flags: 0, a: 234, b: 1105, first: 0x0020000000000000 },
2536    Node { op: Op::Rule, flags: 0, a: 456, b: 2053, first: 0x0000000800000000 },
2537    Node { op: Op::Rule, flags: 0, a: 261, b: 1210, first: 0x0000000000000400 },
2538    Node { op: Op::Rule, flags: 0, a: 298, b: 1438, first: 0x0000000000400000 },
2539    Node { op: Op::Choice, flags: 0, a: 1631, b: 5, first: 0x0020000800400440 },
2540    Node { op: Op::Keyword, flags: 0, a: 270, b: 0, first: 0x0000100000000000 },
2541    Node { op: Op::Optional, flags: 2, a: 2499, b: 0, first: 0x0000100000000000 },
2542    Node { op: Op::Keyword, flags: 0, a: 243, b: 0, first: 0x0000000000020000 },
2543    Node { op: Op::Sequence, flags: 0, a: 1636, b: 2, first: 0x0000100000020000 },
2544    Node { op: Op::Keyword, flags: 0, a: 243, b: 0, first: 0x0000000000020000 },
2545    Node { op: Op::Keyword, flags: 0, a: 482, b: 0, first: 0x0000000001000000 },
2546    Node { op: Op::Sequence, flags: 0, a: 1638, b: 2, first: 0x0000000000020000 },
2547    Node { op: Op::Keyword, flags: 0, a: 244, b: 0, first: 0x0000000000040000 },
2548    Node { op: Op::Rule, flags: 0, a: 1065, b: 4645, first: 0x0000000400000000 },
2549    Node { op: Op::Optional, flags: 2, a: 2507, b: 0, first: 0x0000000400000000 },
2550    Node { op: Op::Keyword, flags: 0, a: 245, b: 0, first: 0x0000000000080000 },
2551    Node { op: Op::Keyword, flags: 0, a: 210, b: 0, first: 0x0000040000000000 },
2552    Node { op: Op::Rule, flags: 0, a: 944, b: 4104, first: 0xffffffffffffffc5 },
2553    Node { op: Op::Rule, flags: 0, a: 546, b: 2521, first: 0x0000000000000200 },
2554    Node { op: Op::Rule, flags: 0, a: 497, b: 2278, first: 0x0800000000000200 },
2555    Node { op: Op::Rule, flags: 0, a: 547, b: 2524, first: 0x0000000040000000 },
2556    Node { op: Op::Repeat, flags: 0, a: 2514, b: 0, first: 0x0000000040000000 },
2557    Node { op: Op::Rule, flags: 0, a: 771, b: 3379, first: 0x0000000000200000 },
2558    Node { op: Op::Optional, flags: 2, a: 2516, b: 0, first: 0x0000000000200000 },
2559    Node { op: Op::Sequence, flags: 0, a: 1640, b: 8, first: 0x0000000400080000 },
2560    Node { op: Op::Keyword, flags: 0, a: 467, b: 0, first: 0x0000000000000200 },
2561    Node { op: Op::Rule, flags: 0, a: 936, b: 4060, first: 0xffffffffffffffcd },
2562    Node { op: Op::Sequence, flags: 0, a: 1648, b: 2, first: 0x0000000000000200 },
2563    Node { op: Op::Rule, flags: 0, a: 540, b: 2492, first: 0x0000000040000000 },
2564    Node { op: Op::Rule, flags: 0, a: 589, b: 2704, first: 0x0000000040000000 },
2565    Node { op: Op::Choice, flags: 0, a: 1650, b: 2, first: 0x0000000040000000 },
2566    Node { op: Op::Rule, flags: 0, a: 119, b: 584, first: 0xffffffffffffffc1 },
2567    Node { op: Op::Rule, flags: 0, a: 550, b: 2540, first: 0x0000000000000008 },
2568    Node { op: Op::Sequence, flags: 0, a: 1652, b: 2, first: 0xffffffffffffffc1 },
2569    Node { op: Op::Rule, flags: 0, a: 260, b: 1207, first: 0x0000000000008200 },
2570    Node { op: Op::Optional, flags: 2, a: 2528, b: 0, first: 0x0000000000008200 },
2571    Node { op: Op::Rule, flags: 0, a: 551, b: 2548, first: 0xffffffffffffffcf },
2572    Node { op: Op::Optional, flags: 2, a: 2530, b: 0, first: 0xffffffffffffffcf },
2573    Node { op: Op::Rule, flags: 0, a: 639, b: 2844, first: 0x0000000000000080 },
2574    Node { op: Op::Optional, flags: 2, a: 2532, b: 0, first: 0x0000000000000080 },
2575    Node { op: Op::Rule, flags: 0, a: 431, b: 1966, first: 0x0000000000048000 },
2576    Node { op: Op::Optional, flags: 2, a: 2534, b: 0, first: 0x0000000000048000 },
2577    Node { op: Op::Sequence, flags: 2, a: 1654, b: 4, first: 0xffffffffffffffcf },
2578    Node { op: Op::Rule, flags: 2, a: 549, b: 2536, first: 0xffffffffffffffcf },
2579    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2580    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2581    Node { op: Op::Sequence, flags: 0, a: 1658, b: 3, first: 0x0000000000000008 },
2582    Node { op: Op::Rule, flags: 0, a: 380, b: 1760, first: 0xffffffffffffffcf },
2583    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2584    Node { op: Op::Sequence, flags: 0, a: 1661, b: 2, first: 0x0000000000000008 },
2585    Node { op: Op::Repeat, flags: 0, a: 2543, b: 0, first: 0x0000000000000008 },
2586    Node { op: Op::Optional, flags: 2, a: 2544, b: 0, first: 0x0000000000000008 },
2587    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2588    Node { op: Op::Optional, flags: 2, a: 2546, b: 0, first: 0x0000000000000008 },
2589    Node { op: Op::Sequence, flags: 0, a: 1663, b: 3, first: 0xffffffffffffffcf },
2590    Node { op: Op::Keyword, flags: 0, a: 247, b: 0, first: 0x0000000000200000 },
2591    Node { op: Op::Keyword, flags: 0, a: 248, b: 0, first: 0x0000000000400000 },
2592    Node { op: Op::Choice, flags: 0, a: 1666, b: 2, first: 0x0000000000600000 },
2593    Node { op: Op::Keyword, flags: 0, a: 250, b: 0, first: 0x0000000001000000 },
2594    Node { op: Op::Keyword, flags: 0, a: 249, b: 0, first: 0x0000000000800000 },
2595    Node { op: Op::Choice, flags: 0, a: 1668, b: 2, first: 0x0000000001800000 },
2596    Node { op: Op::Keyword, flags: 0, a: 251, b: 0, first: 0x0000000002000000 },
2597    Node { op: Op::Keyword, flags: 0, a: 252, b: 0, first: 0x0000000004000000 },
2598    Node { op: Op::Choice, flags: 0, a: 1670, b: 2, first: 0x0000000006000000 },
2599    Node { op: Op::Keyword, flags: 0, a: 255, b: 0, first: 0x0000000020000000 },
2600    Node { op: Op::Symbol, flags: 0, a: 29, b: 0, first: 0x0000000000000008 },
2601    Node { op: Op::Keyword, flags: 0, a: 253, b: 0, first: 0x0000000008000000 },
2602    Node { op: Op::Keyword, flags: 0, a: 254, b: 0, first: 0x0000000010000000 },
2603    Node { op: Op::Choice, flags: 0, a: 1672, b: 2, first: 0x0000000018000000 },
2604    Node { op: Op::Rule, flags: 0, a: 557, b: 2562, first: 0x0000000018000000 },
2605    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
2606    Node { op: Op::Rule, flags: 0, a: 803, b: 3490, first: 0x000000c000000000 },
2607    Node { op: Op::Sequence, flags: 0, a: 1674, b: 3, first: 0x0000000018000000 },
2608    Node { op: Op::Keyword, flags: 0, a: 257, b: 0, first: 0x0000000080000000 },
2609    Node { op: Op::Keyword, flags: 0, a: 258, b: 0, first: 0x0000000100000000 },
2610    Node { op: Op::Choice, flags: 0, a: 1677, b: 2, first: 0x0000000180000000 },
2611    Node { op: Op::Rule, flags: 0, a: 322, b: 1546, first: 0xffffffffffffffcf },
2612    Node { op: Op::Rule, flags: 0, a: 561, b: 2577, first: 0x0000000000000008 },
2613    Node { op: Op::Repeat, flags: 0, a: 2571, b: 0, first: 0x0000000000000008 },
2614    Node { op: Op::Optional, flags: 2, a: 2572, b: 0, first: 0x0000000000000008 },
2615    Node { op: Op::Sequence, flags: 0, a: 1679, b: 2, first: 0xffffffffffffffcf },
2616    Node { op: Op::Rule, flags: 0, a: 343, b: 1630, first: 0x0000000000000008 },
2617    Node { op: Op::Rule, flags: 0, a: 322, b: 1546, first: 0xffffffffffffffcf },
2618    Node { op: Op::Sequence, flags: 0, a: 1681, b: 2, first: 0x0000000000000008 },
2619    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
2620    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2621    Node { op: Op::Sequence, flags: 0, a: 1683, b: 2, first: 0x0000000000000008 },
2622    Node { op: Op::Repeat, flags: 0, a: 2580, b: 0, first: 0x0000000000000008 },
2623    Node { op: Op::Optional, flags: 2, a: 2581, b: 0, first: 0x0000000000000008 },
2624    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2625    Node { op: Op::Optional, flags: 2, a: 2583, b: 0, first: 0x0000000000000008 },
2626    Node { op: Op::Sequence, flags: 0, a: 1685, b: 3, first: 0xffffffffffffffc1 },
2627    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2628    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2629    Node { op: Op::Sequence, flags: 0, a: 1688, b: 3, first: 0x0000000000000008 },
2630    Node { op: Op::Rule, flags: 0, a: 565, b: 2602, first: 0xffffffffffffffc1 },
2631    Node { op: Op::Rule, flags: 0, a: 706, b: 3139, first: 0x2000000000000000 },
2632    Node { op: Op::Rule, flags: 0, a: 445, b: 2019, first: 0x0000000000000008 },
2633    Node { op: Op::Rule, flags: 0, a: 500, b: 2290, first: 0x0000000000000008 },
2634    Node { op: Op::Rule, flags: 0, a: 520, b: 2393, first: 0x0000000000000008 },
2635    Node { op: Op::Rule, flags: 0, a: 902, b: 3917, first: 0x0000000000000008 },
2636    Node { op: Op::Rule, flags: 0, a: 628, b: 2815, first: 0x0000000000000008 },
2637    Node { op: Op::Choice, flags: 0, a: 1691, b: 6, first: 0x2000000000000008 },
2638    Node { op: Op::Rule, flags: 0, a: 991, b: 4269, first: 0xffffffffffffffc1 },
2639    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
2640    Node { op: Op::Optional, flags: 2, a: 2598, b: 0, first: 0xffffffffffffffc1 },
2641    Node { op: Op::Rule, flags: 0, a: 566, b: 2605, first: 0x0000000000000008 },
2642    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2643    Node { op: Op::Sequence, flags: 0, a: 1697, b: 4, first: 0xffffffffffffffc1 },
2644    Node { op: Op::Symbol, flags: 0, a: 52, b: 0, first: 0x0000000000000008 },
2645    Node { op: Op::Symbol, flags: 0, a: 43, b: 0, first: 0x0000000000000008 },
2646    Node { op: Op::Choice, flags: 0, a: 1701, b: 2, first: 0x0000000000000008 },
2647    Node { op: Op::Keyword, flags: 0, a: 263, b: 0, first: 0x0000002000000000 },
2648    Node { op: Op::Rule, flags: 0, a: 498, b: 2285, first: 0x0810100081400000 },
2649    Node { op: Op::Optional, flags: 2, a: 2607, b: 0, first: 0x0810100081400000 },
2650    Node { op: Op::Sequence, flags: 0, a: 1703, b: 2, first: 0x0000002000000000 },
2651    Node { op: Op::Keyword, flags: 0, a: 18, b: 0, first: 0x0000000001000000 },
2652    Node { op: Op::Rule, flags: 0, a: 580, b: 2673, first: 0x0000000000008000 },
2653    Node { op: Op::Rule, flags: 0, a: 578, b: 2668, first: 0xffffffffffffffc1 },
2654    Node { op: Op::Rule, flags: 0, a: 579, b: 2672, first: 0x0100000000000008 },
2655    Node { op: Op::Rule, flags: 0, a: 570, b: 2622, first: 0xffffffffffffffc5 },
2656    Node { op: Op::Rule, flags: 0, a: 576, b: 2660, first: 0x0000000000000008 },
2657    Node { op: Op::Choice, flags: 0, a: 1705, b: 5, first: 0xffffffffffffffcd },
2658    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
2659    Node { op: Op::Rule, flags: 0, a: 42, b: 228, first: 0x0000000200000000 },
2660    Node { op: Op::Optional, flags: 2, a: 2618, b: 0, first: 0x0000000200000000 },
2661    Node { op: Op::Rule, flags: 0, a: 780, b: 3418, first: 0x0000000008000200 },
2662    Node { op: Op::Optional, flags: 2, a: 2620, b: 0, first: 0x0000000008000200 },
2663    Node { op: Op::Sequence, flags: 0, a: 1710, b: 3, first: 0xffffffffffffffc5 },
2664    Node { op: Op::Keyword, flags: 0, a: 118, b: 0, first: 0x0000000000000100 },
2665    Node { op: Op::Keyword, flags: 0, a: 135, b: 0, first: 0x0000000002000000 },
2666    Node { op: Op::Rule, flags: 0, a: 498, b: 2285, first: 0x0810100081400000 },
2667    Node { op: Op::Optional, flags: 2, a: 2625, b: 0, first: 0x0810100081400000 },
2668    Node { op: Op::Keyword, flags: 0, a: 215, b: 0, first: 0x0000800000000000 },
2669    Node { op: Op::Rule, flags: 0, a: 936, b: 4060, first: 0xffffffffffffffcd },
2670    Node { op: Op::Rule, flags: 0, a: 34, b: 200, first: 0x0000000003000000 },
2671    Node { op: Op::Optional, flags: 2, a: 2629, b: 0, first: 0x0000000003000000 },
2672    Node { op: Op::Keyword, flags: 0, a: 265, b: 0, first: 0x0000008000000000 },
2673    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
2674    Node { op: Op::Optional, flags: 2, a: 2632, b: 0, first: 0x0000000000000002 },
2675    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
2676    Node { op: Op::Rule, flags: 0, a: 254, b: 1182, first: 0x0100000000000100 },
2677    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2678    Node { op: Op::Sequence, flags: 0, a: 1713, b: 9, first: 0x0810900081400000 },
2679    Node { op: Op::Rule, flags: 0, a: 498, b: 2285, first: 0x0810100081400000 },
2680    Node { op: Op::Optional, flags: 2, a: 2638, b: 0, first: 0x0810100081400000 },
2681    Node { op: Op::Keyword, flags: 0, a: 215, b: 0, first: 0x0000800000000000 },
2682    Node { op: Op::Rule, flags: 0, a: 569, b: 2616, first: 0xffffffffffffffcd },
2683    Node { op: Op::Rule, flags: 0, a: 34, b: 200, first: 0x0000000003000000 },
2684    Node { op: Op::Optional, flags: 2, a: 2642, b: 0, first: 0x0000000003000000 },
2685    Node { op: Op::Keyword, flags: 0, a: 265, b: 0, first: 0x0000008000000000 },
2686    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
2687    Node { op: Op::Optional, flags: 2, a: 2645, b: 0, first: 0x0000000000000002 },
2688    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
2689    Node { op: Op::Rule, flags: 0, a: 254, b: 1182, first: 0x0100000000000100 },
2690    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2691    Node { op: Op::Sequence, flags: 0, a: 1722, b: 9, first: 0x0810900081400000 },
2692    Node { op: Op::Rule, flags: 0, a: 574, b: 2650, first: 0x0810900081400000 },
2693    Node { op: Op::Rule, flags: 0, a: 573, b: 2637, first: 0x0810900081400000 },
2694    Node { op: Op::Choice, flags: 0, a: 1731, b: 2, first: 0x0810900081400000 },
2695    Node { op: Op::Rule, flags: 0, a: 936, b: 4060, first: 0xffffffffffffffcd },
2696    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2697    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2698    Node { op: Op::Sequence, flags: 0, a: 1733, b: 3, first: 0x0000000000000008 },
2699    Node { op: Op::Rule, flags: 0, a: 780, b: 3418, first: 0x0000000008000200 },
2700    Node { op: Op::Optional, flags: 2, a: 2658, b: 0, first: 0x0000000008000200 },
2701    Node { op: Op::Sequence, flags: 0, a: 1736, b: 2, first: 0x0000000000000008 },
2702    Node { op: Op::Keyword, flags: 0, a: 398, b: 0, first: 0x0100000000000000 },
2703    Node { op: Op::Rule, flags: 0, a: 505, b: 2319, first: 0x0100000000000000 },
2704    Node { op: Op::Optional, flags: 2, a: 2662, b: 0, first: 0x0100000000000000 },
2705    Node { op: Op::Rule, flags: 0, a: 710, b: 3161, first: 0xffffffffffffffc1 },
2706    Node { op: Op::Rule, flags: 0, a: 927, b: 4019, first: 0x0000000000000008 },
2707    Node { op: Op::Rule, flags: 0, a: 1073, b: 4668, first: 0x0000000400000000 },
2708    Node { op: Op::Optional, flags: 2, a: 2666, b: 0, first: 0x0000000400000000 },
2709    Node { op: Op::Sequence, flags: 0, a: 1738, b: 4, first: 0xffffffffffffffc1 },
2710    Node { op: Op::Rule, flags: 0, a: 505, b: 2319, first: 0x0100000000000000 },
2711    Node { op: Op::Optional, flags: 2, a: 2669, b: 0, first: 0x0100000000000000 },
2712    Node { op: Op::Rule, flags: 0, a: 911, b: 3951, first: 0x0000000000000008 },
2713    Node { op: Op::Sequence, flags: 0, a: 1742, b: 2, first: 0x0100000000000008 },
2714    Node { op: Op::Rule, flags: 0, a: 1042, b: 4533, first: 0x0000000000008000 },
2715    Node { op: Op::Rule, flags: 0, a: 424, b: 1938, first: 0xffffffffffffffc1 },
2716    Node { op: Op::Repeat, flags: 0, a: 2674, b: 0, first: 0xffffffffffffffc1 },
2717    Node { op: Op::Optional, flags: 2, a: 2675, b: 0, first: 0xffffffffffffffc1 },
2718    Node { op: Op::Rule, flags: 0, a: 135, b: 660, first: 0xffffffffffffffc1 },
2719    Node { op: Op::Sequence, flags: 0, a: 1744, b: 2, first: 0xffffffffffffffc1 },
2720    Node { op: Op::Rule, flags: 0, a: 93, b: 441, first: 0xffffffffffffffc1 },
2721    Node { op: Op::Rule, flags: 0, a: 759, b: 3347, first: 0xffffffffffffffc1 },
2722    Node { op: Op::Rule, flags: 0, a: 759, b: 3347, first: 0xffffffffffffffc1 },
2723    Node { op: Op::Rule, flags: 0, a: 759, b: 3347, first: 0xffffffffffffffc1 },
2724    Node { op: Op::Repeat, flags: 0, a: 2682, b: 0, first: 0xffffffffffffffc1 },
2725    Node { op: Op::Rule, flags: 0, a: 752, b: 3336, first: 0xffffffffffffffc1 },
2726    Node { op: Op::Sequence, flags: 0, a: 1746, b: 5, first: 0xffffffffffffffc1 },
2727    Node { op: Op::Keyword, flags: 0, a: 268, b: 0, first: 0x0000040000000000 },
2728    Node { op: Op::Keyword, flags: 0, a: 3, b: 0, first: 0x0000000000000200 },
2729    Node { op: Op::Sequence, flags: 0, a: 1751, b: 2, first: 0x0000040000000000 },
2730    Node { op: Op::Keyword, flags: 0, a: 269, b: 0, first: 0x0000080000000000 },
2731    Node { op: Op::Rule, flags: 0, a: 587, b: 2693, first: 0x0000100000000000 },
2732    Node { op: Op::Repeat, flags: 0, a: 2690, b: 0, first: 0x0000100000000000 },
2733    Node { op: Op::Symbol, flags: 0, a: 2, b: 0, first: 0x0000000000000008 },
2734    Node { op: Op::Keyword, flags: 0, a: 270, b: 0, first: 0x0000100000000000 },
2735    Node { op: Op::Symbol, flags: 0, a: 6, b: 0, first: 0x0000000000000008 },
2736    Node { op: Op::Keyword, flags: 0, a: 488, b: 0, first: 0x0000000040000000 },
2737    Node { op: Op::Keyword, flags: 0, a: 270, b: 0, first: 0x0000100000000000 },
2738    Node { op: Op::Keyword, flags: 0, a: 242, b: 0, first: 0x0000000000010000 },
2739    Node { op: Op::Rule, flags: 0, a: 75, b: 382, first: 0x0000400000000000 },
2740    Node { op: Op::Optional, flags: 2, a: 2698, b: 0, first: 0x0000400000000000 },
2741    Node { op: Op::Rule, flags: 0, a: 27, b: 148, first: 0x0000000000200000 },
2742    Node { op: Op::Optional, flags: 2, a: 2700, b: 0, first: 0x0000000000200000 },
2743    Node { op: Op::Keyword, flags: 0, a: 434, b: 0, first: 0x0000000400000000 },
2744    Node { op: Op::Rule, flags: 0, a: 541, b: 2498, first: 0x0020000800400440 },
2745    Node { op: Op::Sequence, flags: 0, a: 1753, b: 7, first: 0x0000000040000000 },
2746    Node { op: Op::Rule, flags: 0, a: 593, b: 2716, first: 0x0000100000000000 },
2747    Node { op: Op::Rule, flags: 0, a: 594, b: 2717, first: 0x0000800000000000 },
2748    Node { op: Op::Choice, flags: 0, a: 1760, b: 2, first: 0x0000900000000000 },
2749    Node { op: Op::Keyword, flags: 0, a: 270, b: 0, first: 0x0000100000000000 },
2750    Node { op: Op::Keyword, flags: 0, a: 275, b: 0, first: 0x0002000000000000 },
2751    Node { op: Op::Sequence, flags: 0, a: 1762, b: 2, first: 0x0000100000000000 },
2752    Node { op: Op::Rule, flags: 0, a: 598, b: 2725, first: 0x0002000000000000 },
2753    Node { op: Op::Rule, flags: 0, a: 591, b: 2710, first: 0x0000100000000000 },
2754    Node { op: Op::Choice, flags: 0, a: 1764, b: 2, first: 0x0002100000000000 },
2755    Node { op: Op::Keyword, flags: 0, a: 270, b: 0, first: 0x0000100000000000 },
2756    Node { op: Op::Keyword, flags: 0, a: 275, b: 0, first: 0x0002000000000000 },
2757    Node { op: Op::Sequence, flags: 0, a: 1766, b: 2, first: 0x0000100000000000 },
2758    Node { op: Op::Keyword, flags: 0, a: 273, b: 0, first: 0x0000800000000000 },
2759    Node { op: Op::Symbol, flags: 0, a: 7, b: 0, first: 0x0000000000000008 },
2760    Node { op: Op::Symbol, flags: 0, a: 11, b: 0, first: 0x0000000000000008 },
2761    Node { op: Op::Keyword, flags: 0, a: 275, b: 0, first: 0x0002000000000000 },
2762    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
2763    Node { op: Op::Optional, flags: 2, a: 2721, b: 0, first: 0x0000000004000000 },
2764    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
2765    Node { op: Op::Sequence, flags: 0, a: 1768, b: 3, first: 0x0002000000000000 },
2766    Node { op: Op::Keyword, flags: 0, a: 275, b: 0, first: 0x0002000000000000 },
2767    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2768    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2769    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2770    Node { op: Op::Sequence, flags: 0, a: 1771, b: 3, first: 0xffffffffffffffcf },
2771    Node { op: Op::Keyword, flags: 0, a: 276, b: 0, first: 0x0004000000000000 },
2772    Node { op: Op::Rule, flags: 0, a: 599, b: 2729, first: 0xffffffffffffffcf },
2773    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2774    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2775    Node { op: Op::Sequence, flags: 0, a: 1774, b: 3, first: 0x0000000000000008 },
2776    Node { op: Op::Sequence, flags: 0, a: 1777, b: 2, first: 0x0004000000000000 },
2777    Node { op: Op::Keyword, flags: 0, a: 275, b: 0, first: 0x0002000000000000 },
2778    Node { op: Op::Keyword, flags: 0, a: 277, b: 0, first: 0x0008000000000000 },
2779    Node { op: Op::Keyword, flags: 0, a: 153, b: 0, first: 0x0000080000000000 },
2780    Node { op: Op::Sequence, flags: 0, a: 1779, b: 2, first: 0x0008000000000000 },
2781    Node { op: Op::Rule, flags: 0, a: 602, b: 2739, first: 0x0008000000000000 },
2782    Node { op: Op::Rule, flags: 0, a: 604, b: 2745, first: 0x0008000000000000 },
2783    Node { op: Op::Choice, flags: 0, a: 1781, b: 2, first: 0x0008000000000000 },
2784    Node { op: Op::Keyword, flags: 0, a: 277, b: 0, first: 0x0008000000000000 },
2785    Node { op: Op::Keyword, flags: 0, a: 223, b: 0, first: 0x0080000000000000 },
2786    Node { op: Op::Sequence, flags: 0, a: 1783, b: 2, first: 0x0008000000000000 },
2787    Node { op: Op::Number, flags: 0, a: 0, b: 0, first: 0x0000000000000002 },
2788    Node { op: Op::Symbol, flags: 0, a: 49, b: 0, first: 0x0000000000000008 },
2789    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
2790    Node { op: Op::Sequence, flags: 0, a: 1785, b: 2, first: 0x0000000000000008 },
2791    Node { op: Op::Keyword, flags: 0, a: 278, b: 0, first: 0x0010000000000000 },
2792    Node { op: Op::Rule, flags: 0, a: 994, b: 4295, first: 0x0000000000000008 },
2793    Node { op: Op::Optional, flags: 2, a: 2751, b: 0, first: 0x0000000000000008 },
2794    Node { op: Op::Sequence, flags: 0, a: 1787, b: 2, first: 0x0010000000000000 },
2795    Node { op: Op::Rule, flags: 0, a: 868, b: 3721, first: 0x090012c000002000 },
2796    Node { op: Op::Rule, flags: 0, a: 224, b: 1079, first: 0x0010580000000000 },
2797    Node { op: Op::Choice, flags: 0, a: 1789, b: 2, first: 0x09105ac000002000 },
2798    Node { op: Op::Keyword, flags: 0, a: 282, b: 0, first: 0x0100000000000000 },
2799    Node { op: Op::Rule, flags: 0, a: 612, b: 2770, first: 0xffffffffffffffcf },
2800    Node { op: Op::Sequence, flags: 0, a: 1791, b: 2, first: 0x0100000000000000 },
2801    Node { op: Op::Rule, flags: 0, a: 609, b: 2759, first: 0x0100000000000000 },
2802    Node { op: Op::Rule, flags: 0, a: 345, b: 1637, first: 0x0000020000000000 },
2803    Node { op: Op::Sequence, flags: 0, a: 1793, b: 2, first: 0x0100000000000000 },
2804    Node { op: Op::Rule, flags: 0, a: 609, b: 2759, first: 0x0100000000000000 },
2805    Node { op: Op::Rule, flags: 0, a: 511, b: 2346, first: 0x4000000000000000 },
2806    Node { op: Op::Optional, flags: 2, a: 2764, b: 0, first: 0x4000000000000000 },
2807    Node { op: Op::Sequence, flags: 0, a: 1795, b: 2, first: 0x0100000000000000 },
2808    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2809    Node { op: Op::Rule, flags: 0, a: 776, b: 3405, first: 0x0000000030000000 },
2810    Node { op: Op::Optional, flags: 2, a: 2768, b: 0, first: 0x0000000030000000 },
2811    Node { op: Op::Sequence, flags: 0, a: 1797, b: 2, first: 0xffffffffffffffcf },
2812    Node { op: Op::Rule, flags: 0, a: 1072, b: 4665, first: 0x0000001400000000 },
2813    Node { op: Op::Keyword, flags: 0, a: 283, b: 0, first: 0x0200000000000000 },
2814    Node { op: Op::Sequence, flags: 0, a: 1799, b: 2, first: 0x0000001400000000 },
2815    Node { op: Op::Keyword, flags: 0, a: 283, b: 0, first: 0x0200000000000000 },
2816    Node { op: Op::Keyword, flags: 0, a: 285, b: 0, first: 0x0800000000000000 },
2817    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2818    Node { op: Op::Sequence, flags: 0, a: 1801, b: 2, first: 0x0800000000000000 },
2819    Node { op: Op::Rule, flags: 0, a: 622, b: 2807, first: 0x0000000000000400 },
2820    Node { op: Op::Rule, flags: 0, a: 620, b: 2797, first: 0x0000000000000400 },
2821    Node { op: Op::Choice, flags: 0, a: 1803, b: 2, first: 0x0000000000000400 },
2822    Node { op: Op::Keyword, flags: 0, a: 285, b: 0, first: 0x0800000000000000 },
2823    Node { op: Op::Keyword, flags: 0, a: 72, b: 0, first: 0x0000000000100000 },
2824    Node { op: Op::Rule, flags: 0, a: 621, b: 2800, first: 0x0800000000000008 },
2825    Node { op: Op::Optional, flags: 2, a: 2783, b: 0, first: 0x0800000000000008 },
2826    Node { op: Op::Rule, flags: 0, a: 616, b: 2780, first: 0x0000000000000400 },
2827    Node { op: Op::Sequence, flags: 0, a: 1805, b: 4, first: 0x0800000000000000 },
2828    Node { op: Op::Rule, flags: 0, a: 133, b: 651, first: 0x0000000000000008 },
2829    Node { op: Op::Rule, flags: 0, a: 1053, b: 4574, first: 0x0000000080000000 },
2830    Node { op: Op::Optional, flags: 2, a: 2788, b: 0, first: 0x0000000080000000 },
2831    Node { op: Op::Sequence, flags: 0, a: 1809, b: 2, first: 0x0000000000000008 },
2832    Node { op: Op::Keyword, flags: 0, a: 285, b: 0, first: 0x0800000000000000 },
2833    Node { op: Op::Keyword, flags: 0, a: 75, b: 0, first: 0x0000000000800000 },
2834    Node { op: Op::Rule, flags: 0, a: 161, b: 748, first: 0xffffffffffffffc5 },
2835    Node { op: Op::Sequence, flags: 0, a: 1811, b: 3, first: 0x0800000000000000 },
2836    Node { op: Op::Keyword, flags: 0, a: 120, b: 0, first: 0x0000000000000400 },
2837    Node { op: Op::Keyword, flags: 0, a: 271, b: 0, first: 0x0000200000000000 },
2838    Node { op: Op::Sequence, flags: 0, a: 1814, b: 2, first: 0x0000000000000400 },
2839    Node { op: Op::Rule, flags: 0, a: 618, b: 2790, first: 0x0000000000000008 },
2840    Node { op: Op::Rule, flags: 0, a: 619, b: 2794, first: 0x0800000000000000 },
2841    Node { op: Op::Choice, flags: 0, a: 1816, b: 2, first: 0x0800000000000008 },
2842    Node { op: Op::Keyword, flags: 0, a: 120, b: 0, first: 0x0000000000000400 },
2843    Node { op: Op::Keyword, flags: 0, a: 464, b: 0, first: 0x0000000000000040 },
2844    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
2845    Node { op: Op::Rule, flags: 0, a: 1022, b: 4399, first: 0xffffffffffffffc9 },
2846    Node { op: Op::Rule, flags: 0, a: 1053, b: 4574, first: 0x0000000080000000 },
2847    Node { op: Op::Optional, flags: 2, a: 2805, b: 0, first: 0x0000000080000000 },
2848    Node { op: Op::Sequence, flags: 0, a: 1818, b: 5, first: 0x0000000000000400 },
2849    Node { op: Op::Symbol, flags: 0, a: 36, b: 0, first: 0x0000000000000008 },
2850    Node { op: Op::Symbol, flags: 0, a: 21, b: 0, first: 0x0000000000000008 },
2851    Node { op: Op::Choice, flags: 0, a: 1823, b: 2, first: 0x0000000000000008 },
2852    Node { op: Op::Symbol, flags: 0, a: 35, b: 0, first: 0x0000000000000008 },
2853    Node { op: Op::Symbol, flags: 0, a: 18, b: 0, first: 0x0000000000000008 },
2854    Node { op: Op::Symbol, flags: 0, a: 34, b: 0, first: 0x0000000000000008 },
2855    Node { op: Op::Symbol, flags: 0, a: 17, b: 0, first: 0x0000000000000008 },
2856    Node { op: Op::Operator, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2857    Node { op: Op::Symbol, flags: 0, a: 20, b: 0, first: 0x0000000000000008 },
2858    Node { op: Op::Symbol, flags: 0, a: 19, b: 0, first: 0x0000000000000008 },
2859    Node { op: Op::Choice, flags: 0, a: 1825, b: 2, first: 0x0000000000000008 },
2860    Node { op: Op::Rule, flags: 0, a: 23, b: 134, first: 0x0000000000180000 },
2861    Node { op: Op::Keyword, flags: 0, a: 160, b: 0, first: 0x0004000000000000 },
2862    Node { op: Op::Keyword, flags: 0, a: 162, b: 0, first: 0x0010000000000000 },
2863    Node { op: Op::Keyword, flags: 0, a: 480, b: 0, first: 0x0000000000400000 },
2864    Node { op: Op::Rule, flags: 0, a: 657, b: 2951, first: 0x0000000000000008 },
2865    Node { op: Op::Rule, flags: 0, a: 51, b: 272, first: 0xffffffffffffffc5 },
2866    Node { op: Op::Choice, flags: 0, a: 1827, b: 2, first: 0xffffffffffffffcd },
2867    Node { op: Op::Rule, flags: 0, a: 871, b: 3743, first: 0x0000000000000008 },
2868    Node { op: Op::Rule, flags: 0, a: 870, b: 3739, first: 0x0008080000000000 },
2869    Node { op: Op::Choice, flags: 0, a: 1829, b: 2, first: 0x0008080000000008 },
2870    Node { op: Op::Rule, flags: 0, a: 459, b: 2063, first: 0x0000000000000040 },
2871    Node { op: Op::Rule, flags: 0, a: 458, b: 2060, first: 0x0000000000000040 },
2872    Node { op: Op::Choice, flags: 0, a: 1831, b: 2, first: 0x0000000000000040 },
2873    Node { op: Op::Keyword, flags: 0, a: 290, b: 0, first: 0x0000000000000040 },
2874    Node { op: Op::Keyword, flags: 0, a: 354, b: 0, first: 0x0000000000001000 },
2875    Node { op: Op::Sequence, flags: 0, a: 1833, b: 2, first: 0x0000000000000040 },
2876    Node { op: Op::Keyword, flags: 0, a: 9, b: 0, first: 0x0000000000008000 },
2877    Node { op: Op::Rule, flags: 0, a: 239, b: 1136, first: 0x0200000008000001 },
2878    Node { op: Op::Optional, flags: 2, a: 2836, b: 0, first: 0x0200000008000001 },
2879    Node { op: Op::Rule, flags: 0, a: 603, b: 2742, first: 0x0008000000000000 },
2880    Node { op: Op::Optional, flags: 2, a: 2838, b: 0, first: 0x0008000000000000 },
2881    Node { op: Op::Sequence, flags: 0, a: 1835, b: 3, first: 0x0000000000008000 },
2882    Node { op: Op::Keyword, flags: 0, a: 291, b: 0, first: 0x0000000000000080 },
2883    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
2884    Node { op: Op::Rule, flags: 0, a: 643, b: 2866, first: 0xffffffffffffffcf },
2885    Node { op: Op::Sequence, flags: 0, a: 1838, b: 3, first: 0x0000000000000080 },
2886    Node { op: Op::Keyword, flags: 0, a: 291, b: 0, first: 0x0000000000000080 },
2887    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
2888    Node { op: Op::Rule, flags: 0, a: 400, b: 1845, first: 0xffffffffffffffcf },
2889    Node { op: Op::Optional, flags: 2, a: 2847, b: 0, first: 0xffffffffffffffcf },
2890    Node { op: Op::Sequence, flags: 0, a: 1841, b: 3, first: 0x0000000000000080 },
2891    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2892    Node { op: Op::Rule, flags: 0, a: 239, b: 1136, first: 0x0200000008000001 },
2893    Node { op: Op::Optional, flags: 2, a: 2851, b: 0, first: 0x0200000008000001 },
2894    Node { op: Op::Rule, flags: 0, a: 603, b: 2742, first: 0x0008000000000000 },
2895    Node { op: Op::Optional, flags: 2, a: 2853, b: 0, first: 0x0008000000000000 },
2896    Node { op: Op::Sequence, flags: 0, a: 1844, b: 3, first: 0xffffffffffffffcf },
2897    Node { op: Op::Rule, flags: 0, a: 641, b: 2855, first: 0xffffffffffffffcf },
2898    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2899    Node { op: Op::Sequence, flags: 0, a: 1847, b: 2, first: 0x0000000000000008 },
2900    Node { op: Op::Repeat, flags: 0, a: 2858, b: 0, first: 0x0000000000000008 },
2901    Node { op: Op::Optional, flags: 2, a: 2859, b: 0, first: 0x0000000000000008 },
2902    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2903    Node { op: Op::Optional, flags: 2, a: 2861, b: 0, first: 0x0000000000000008 },
2904    Node { op: Op::Sequence, flags: 0, a: 1849, b: 3, first: 0xffffffffffffffcf },
2905    Node { op: Op::Rule, flags: 0, a: 638, b: 2840, first: 0x0000000000008000 },
2906    Node { op: Op::Rule, flags: 0, a: 642, b: 2863, first: 0xffffffffffffffcf },
2907    Node { op: Op::Choice, flags: 0, a: 1852, b: 2, first: 0xffffffffffffffcf },
2908    Node { op: Op::Rule, flags: 0, a: 31, b: 154, first: 0x0000000000000008 },
2909    Node { op: Op::Rule, flags: 0, a: 564, b: 2596, first: 0x2000000000000008 },
2910    Node { op: Op::Choice, flags: 0, a: 1854, b: 2, first: 0x2000000000000008 },
2911    Node { op: Op::Rule, flags: 0, a: 68, b: 354, first: 0xffffffffffffffcf },
2912    Node { op: Op::Rule, flags: 0, a: 646, b: 2877, first: 0x2000000000000008 },
2913    Node { op: Op::Repeat, flags: 0, a: 2871, b: 0, first: 0x2000000000000008 },
2914    Node { op: Op::Optional, flags: 2, a: 2872, b: 0, first: 0x2000000000000008 },
2915    Node { op: Op::Sequence, flags: 0, a: 1856, b: 2, first: 0xffffffffffffffcf },
2916    Node { op: Op::Rule, flags: 0, a: 644, b: 2869, first: 0x2000000000000008 },
2917    Node { op: Op::Rule, flags: 0, a: 68, b: 354, first: 0xffffffffffffffcf },
2918    Node { op: Op::Sequence, flags: 0, a: 1858, b: 2, first: 0x2000000000000008 },
2919    Node { op: Op::Keyword, flags: 0, a: 296, b: 0, first: 0x0000000000001000 },
2920    Node { op: Op::Rule, flags: 0, a: 1058, b: 4600, first: 0xffffffffffffffc9 },
2921    Node { op: Op::Sequence, flags: 0, a: 1860, b: 2, first: 0x0000000000001000 },
2922    Node { op: Op::Rule, flags: 0, a: 651, b: 2904, first: 0xffffffffffffffcf },
2923    Node { op: Op::Rule, flags: 0, a: 650, b: 2897, first: 0xffffffffffffffcf },
2924    Node { op: Op::Choice, flags: 0, a: 1862, b: 2, first: 0xffffffffffffffcf },
2925    Node { op: Op::Keyword, flags: 0, a: 298, b: 0, first: 0x0000000000004000 },
2926    Node { op: Op::Rule, flags: 0, a: 648, b: 2883, first: 0xffffffffffffffcf },
2927    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2928    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2929    Node { op: Op::Sequence, flags: 0, a: 1864, b: 3, first: 0x0000000000000008 },
2930    Node { op: Op::Sequence, flags: 0, a: 1867, b: 2, first: 0x0000000000004000 },
2931    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2932    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2933    Node { op: Op::Sequence, flags: 0, a: 1869, b: 2, first: 0x0000000000000008 },
2934    Node { op: Op::Repeat, flags: 0, a: 2892, b: 0, first: 0x0000000000000008 },
2935    Node { op: Op::Optional, flags: 2, a: 2893, b: 0, first: 0x0000000000000008 },
2936    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2937    Node { op: Op::Optional, flags: 2, a: 2895, b: 0, first: 0x0000000000000008 },
2938    Node { op: Op::Sequence, flags: 0, a: 1871, b: 3, first: 0xffffffffffffffcf },
2939    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2940    Node { op: Op::Keyword, flags: 0, a: 314, b: 0, first: 0x0000000040000000 },
2941    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2942    Node { op: Op::Rule, flags: 0, a: 372, b: 1736, first: 0x0008000000000000 },
2943    Node { op: Op::Rule, flags: 0, a: 357, b: 1675, first: 0x0000400000000000 },
2944    Node { op: Op::Optional, flags: 2, a: 2902, b: 0, first: 0x0000400000000000 },
2945    Node { op: Op::Sequence, flags: 0, a: 1874, b: 5, first: 0xffffffffffffffcf },
2946    Node { op: Op::Rule, flags: 0, a: 715, b: 3177, first: 0x0000000000000008 },
2947    Node { op: Op::Rule, flags: 0, a: 28, b: 149, first: 0x0000000000000008 },
2948    Node { op: Op::Rule, flags: 0, a: 606, b: 2749, first: 0x0000000000000008 },
2949    Node { op: Op::Rule, flags: 0, a: 122, b: 591, first: 0x0000000000000008 },
2950    Node { op: Op::Choice, flags: 0, a: 1879, b: 4, first: 0x0000000000000008 },
2951    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2952    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2953    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2954    Node { op: Op::Sequence, flags: 0, a: 1883, b: 3, first: 0x0000000000000008 },
2955    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
2956    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2957    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2958    Node { op: Op::Sequence, flags: 0, a: 1886, b: 3, first: 0x0000000000000008 },
2959    Node { op: Op::Rule, flags: 0, a: 923, b: 3992, first: 0xffffffffffffffc5 },
2960    Node { op: Op::Optional, flags: 2, a: 2918, b: 0, first: 0xffffffffffffffc5 },
2961    Node { op: Op::Rule, flags: 0, a: 936, b: 4060, first: 0xffffffffffffffcd },
2962    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2963    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2964    Node { op: Op::Sequence, flags: 0, a: 1889, b: 3, first: 0x0000000000000008 },
2965    Node { op: Op::Rule, flags: 0, a: 921, b: 3984, first: 0xffffffffffffffc1 },
2966    Node { op: Op::Optional, flags: 2, a: 2924, b: 0, first: 0xffffffffffffffc1 },
2967    Node { op: Op::Rule, flags: 0, a: 780, b: 3418, first: 0x0000000008000200 },
2968    Node { op: Op::Optional, flags: 2, a: 2926, b: 0, first: 0x0000000008000200 },
2969    Node { op: Op::Sequence, flags: 0, a: 1892, b: 4, first: 0xffffffffffffffcd },
2970    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
2971    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2972    Node { op: Op::Sequence, flags: 0, a: 1896, b: 2, first: 0x0000000000000008 },
2973    Node { op: Op::Repeat, flags: 0, a: 2931, b: 0, first: 0x0000000000000008 },
2974    Node { op: Op::Optional, flags: 2, a: 2932, b: 0, first: 0x0000000000000008 },
2975    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2976    Node { op: Op::Optional, flags: 2, a: 2934, b: 0, first: 0x0000000000000008 },
2977    Node { op: Op::Sequence, flags: 0, a: 1898, b: 3, first: 0xffffffffffffffcf },
2978    Node { op: Op::Optional, flags: 2, a: 2936, b: 0, first: 0xffffffffffffffcf },
2979    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2980    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2981    Node { op: Op::Sequence, flags: 0, a: 1901, b: 3, first: 0x0000000000000008 },
2982    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
2983    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2984    Node { op: Op::Sequence, flags: 0, a: 1904, b: 2, first: 0x0000000000000008 },
2985    Node { op: Op::Repeat, flags: 0, a: 2943, b: 0, first: 0x0000000000000008 },
2986    Node { op: Op::Optional, flags: 2, a: 2944, b: 0, first: 0x0000000000000008 },
2987    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
2988    Node { op: Op::Optional, flags: 2, a: 2946, b: 0, first: 0x0000000000000008 },
2989    Node { op: Op::Sequence, flags: 0, a: 1906, b: 3, first: 0xffffffffffffffc5 },
2990    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2991    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2992    Node { op: Op::Sequence, flags: 0, a: 1909, b: 3, first: 0x0000000000000008 },
2993    Node { op: Op::Rule, flags: 0, a: 134, b: 659, first: 0xffffffffffffffc1 },
2994    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
2995    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
2996    Node { op: Op::Sequence, flags: 0, a: 1912, b: 3, first: 0x0000000000000008 },
2997    Node { op: Op::Rule, flags: 0, a: 891, b: 3860, first: 0x0000000000000008 },
2998    Node { op: Op::Rule, flags: 0, a: 658, b: 2955, first: 0x0000000000000008 },
2999    Node { op: Op::Rule, flags: 0, a: 877, b: 3778, first: 0xffffffffffffffc1 },
3000    Node { op: Op::Choice, flags: 0, a: 1915, b: 3, first: 0xffffffffffffffc9 },
3001    Node { op: Op::Keyword, flags: 0, a: 305, b: 0, first: 0x0000000000200000 },
3002    Node { op: Op::Keyword, flags: 0, a: 306, b: 0, first: 0x0000000000400000 },
3003    Node { op: Op::Choice, flags: 0, a: 1918, b: 2, first: 0x0000000000600000 },
3004    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
3005    Node { op: Op::Rule, flags: 0, a: 659, b: 2959, first: 0xffffffffffffffc9 },
3006    Node { op: Op::Sequence, flags: 0, a: 1920, b: 3, first: 0x0000000000600000 },
3007    Node { op: Op::Rule, flags: 0, a: 662, b: 2983, first: 0x0000000000400000 },
3008    Node { op: Op::Rule, flags: 0, a: 883, b: 3809, first: 0x4000000000000000 },
3009    Node { op: Op::Optional, flags: 2, a: 2967, b: 0, first: 0x4000000000000000 },
3010    Node { op: Op::Sequence, flags: 0, a: 1923, b: 2, first: 0x0000000000400000 },
3011    Node { op: Op::Keyword, flags: 0, a: 306, b: 0, first: 0x0000000000400000 },
3012    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
3013    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3014    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3015    Node { op: Op::Sequence, flags: 0, a: 1925, b: 2, first: 0x0000000000000008 },
3016    Node { op: Op::Repeat, flags: 0, a: 2974, b: 0, first: 0x0000000000000008 },
3017    Node { op: Op::Optional, flags: 2, a: 2975, b: 0, first: 0x0000000000000008 },
3018    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3019    Node { op: Op::Optional, flags: 2, a: 2977, b: 0, first: 0x0000000000000008 },
3020    Node { op: Op::Sequence, flags: 0, a: 1927, b: 3, first: 0xffffffffffffffcf },
3021    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3022    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3023    Node { op: Op::Sequence, flags: 0, a: 1930, b: 3, first: 0x0000000000000008 },
3024    Node { op: Op::Sequence, flags: 0, a: 1933, b: 3, first: 0x0000000000400000 },
3025    Node { op: Op::Rule, flags: 0, a: 661, b: 2969, first: 0x0000000000400000 },
3026    Node { op: Op::Rule, flags: 0, a: 882, b: 3795, first: 0x4000000000000000 },
3027    Node { op: Op::Choice, flags: 0, a: 1936, b: 2, first: 0x4000000000400000 },
3028    Node { op: Op::Keyword, flags: 0, a: 305, b: 0, first: 0x0000000000200000 },
3029    Node { op: Op::Keyword, flags: 0, a: 306, b: 0, first: 0x0000000000400000 },
3030    Node { op: Op::Choice, flags: 0, a: 1938, b: 2, first: 0x0000000000600000 },
3031    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
3032    Node { op: Op::Rule, flags: 0, a: 400, b: 1845, first: 0xffffffffffffffcf },
3033    Node { op: Op::Optional, flags: 2, a: 2991, b: 0, first: 0xffffffffffffffcf },
3034    Node { op: Op::Sequence, flags: 0, a: 1940, b: 3, first: 0x0000000000600000 },
3035    Node { op: Op::Keyword, flags: 0, a: 310, b: 0, first: 0x0000000004000000 },
3036    Node { op: Op::Rule, flags: 0, a: 669, b: 3014, first: 0xffffffffffffffcf },
3037    Node { op: Op::Rule, flags: 0, a: 679, b: 3047, first: 0xffffffffffffffcf },
3038    Node { op: Op::Rule, flags: 0, a: 667, b: 2999, first: 0xffffffffffffffcf },
3039    Node { op: Op::Choice, flags: 0, a: 1943, b: 3, first: 0xffffffffffffffcf },
3040    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3041    Node { op: Op::Rule, flags: 0, a: 666, b: 2998, first: 0xffffffffffffffcf },
3042    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3043    Node { op: Op::Sequence, flags: 0, a: 1946, b: 2, first: 0x0000000000000008 },
3044    Node { op: Op::Repeat, flags: 0, a: 3002, b: 0, first: 0x0000000000000008 },
3045    Node { op: Op::Optional, flags: 2, a: 3003, b: 0, first: 0x0000000000000008 },
3046    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3047    Node { op: Op::Optional, flags: 2, a: 3005, b: 0, first: 0x0000000000000008 },
3048    Node { op: Op::Sequence, flags: 0, a: 1948, b: 3, first: 0xffffffffffffffcf },
3049    Node { op: Op::Rule, flags: 0, a: 52, b: 276, first: 0xffffffffffffffcf },
3050    Node { op: Op::Keyword, flags: 0, a: 189, b: 0, first: 0x0000000000200000 },
3051    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
3052    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3053    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3054    Node { op: Op::Sequence, flags: 0, a: 1951, b: 3, first: 0x0000000000000008 },
3055    Node { op: Op::Sequence, flags: 0, a: 1954, b: 3, first: 0xffffffffffffffcf },
3056    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
3057    Node { op: Op::Keyword, flags: 0, a: 171, b: 0, first: 0x2000000000000000 },
3058    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
3059    Node { op: Op::Rule, flags: 0, a: 634, b: 2825, first: 0xffffffffffffffcd },
3060    Node { op: Op::Sequence, flags: 0, a: 1957, b: 3, first: 0x2000000000000000 },
3061    Node { op: Op::Rule, flags: 0, a: 52, b: 276, first: 0xffffffffffffffcf },
3062    Node { op: Op::Keyword, flags: 0, a: 311, b: 0, first: 0x0000000008000000 },
3063    Node { op: Op::Keyword, flags: 0, a: 313, b: 0, first: 0x0000000020000000 },
3064    Node { op: Op::Choice, flags: 0, a: 1960, b: 2, first: 0x0000000028000000 },
3065    Node { op: Op::Rule, flags: 0, a: 677, b: 3040, first: 0x0000000000000008 },
3066    Node { op: Op::Keyword, flags: 0, a: 285, b: 0, first: 0x0800000000000000 },
3067    Node { op: Op::Rule, flags: 0, a: 668, b: 3007, first: 0xffffffffffffffcf },
3068    Node { op: Op::Sequence, flags: 0, a: 1962, b: 2, first: 0x0800000000000000 },
3069    Node { op: Op::Rule, flags: 0, a: 673, b: 3023, first: 0x0000000028000000 },
3070    Node { op: Op::Rule, flags: 0, a: 936, b: 4060, first: 0xffffffffffffffcd },
3071    Node { op: Op::Rule, flags: 0, a: 675, b: 3027, first: 0x0800000000000000 },
3072    Node { op: Op::Optional, flags: 2, a: 3030, b: 0, first: 0x0800000000000000 },
3073    Node { op: Op::Rule, flags: 0, a: 678, b: 3043, first: 0x0000000000000200 },
3074    Node { op: Op::Optional, flags: 2, a: 3032, b: 0, first: 0x0000000000000200 },
3075    Node { op: Op::Rule, flags: 0, a: 671, b: 3019, first: 0x2000000000000000 },
3076    Node { op: Op::Optional, flags: 2, a: 3034, b: 0, first: 0x2000000000000000 },
3077    Node { op: Op::Sequence, flags: 0, a: 1964, b: 5, first: 0x0000000028000000 },
3078    Node { op: Op::Rule, flags: 0, a: 943, b: 4098, first: 0xffffffffffffffcf },
3079    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3080    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3081    Node { op: Op::Sequence, flags: 0, a: 1969, b: 3, first: 0x0000000000000008 },
3082    Node { op: Op::Keyword, flags: 0, a: 467, b: 0, first: 0x0000000000000200 },
3083    Node { op: Op::Rule, flags: 0, a: 943, b: 4098, first: 0xffffffffffffffcf },
3084    Node { op: Op::Sequence, flags: 0, a: 1972, b: 2, first: 0x0000000000000200 },
3085    Node { op: Op::Rule, flags: 0, a: 672, b: 3020, first: 0xffffffffffffffcf },
3086    Node { op: Op::Keyword, flags: 0, a: 189, b: 0, first: 0x0000000000200000 },
3087    Node { op: Op::Rule, flags: 0, a: 680, b: 3050, first: 0xffffffffffffffc9 },
3088    Node { op: Op::Sequence, flags: 0, a: 1974, b: 3, first: 0xffffffffffffffcf },
3089    Node { op: Op::Rule, flags: 0, a: 670, b: 3015, first: 0xffffffffffffffc1 },
3090    Node { op: Op::Rule, flags: 0, a: 674, b: 3024, first: 0x0000000000000008 },
3091    Node { op: Op::Choice, flags: 0, a: 1977, b: 2, first: 0xffffffffffffffc9 },
3092    Node { op: Op::Symbol, flags: 0, a: 28, b: 0, first: 0x0000000000000008 },
3093    Node { op: Op::Rule, flags: 0, a: 645, b: 2874, first: 0xffffffffffffffcf },
3094    Node { op: Op::Keyword, flags: 0, a: 189, b: 0, first: 0x0000000000200000 },
3095    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3096    Node { op: Op::Sequence, flags: 0, a: 1979, b: 3, first: 0xffffffffffffffcf },
3097    Node { op: Op::Keyword, flags: 0, a: 317, b: 0, first: 0x0000000200000000 },
3098    Node { op: Op::Rule, flags: 0, a: 682, b: 3055, first: 0xffffffffffffffcf },
3099    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3100    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3101    Node { op: Op::Sequence, flags: 0, a: 1982, b: 3, first: 0x0000000000000008 },
3102    Node { op: Op::Sequence, flags: 0, a: 1985, b: 2, first: 0x0000000200000000 },
3103    Node { op: Op::Symbol, flags: 0, a: 53, b: 0, first: 0x0000000000000008 },
3104    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
3105    Node { op: Op::Sequence, flags: 0, a: 1987, b: 2, first: 0x0000000000000008 },
3106    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3107    Node { op: Op::Keyword, flags: 0, a: 318, b: 0, first: 0x0000000400000000 },
3108    Node { op: Op::Symbol, flags: 0, a: 40, b: 0, first: 0x0000000000000008 },
3109    Node { op: Op::Rule, flags: 0, a: 853, b: 3666, first: 0xffffffffffffffc1 },
3110    Node { op: Op::Symbol, flags: 0, a: 36, b: 0, first: 0x0000000000000008 },
3111    Node { op: Op::Rule, flags: 0, a: 1046, b: 4561, first: 0xffffffffffffffcf },
3112    Node { op: Op::Sequence, flags: 0, a: 1989, b: 3, first: 0xffffffffffffffc1 },
3113    Node { op: Op::Rule, flags: 0, a: 688, b: 3071, first: 0xffffffffffffffc1 },
3114    Node { op: Op::Rule, flags: 0, a: 690, b: 3078, first: 0xffffffffffffffc1 },
3115    Node { op: Op::Choice, flags: 0, a: 1992, b: 2, first: 0xffffffffffffffc1 },
3116    Node { op: Op::Rule, flags: 0, a: 691, b: 3079, first: 0xffffffffffffffc1 },
3117    Node { op: Op::Rule, flags: 0, a: 692, b: 3090, first: 0x0000000000000008 },
3118    Node { op: Op::Optional, flags: 2, a: 3076, b: 0, first: 0x0000000000000008 },
3119    Node { op: Op::Sequence, flags: 0, a: 1994, b: 2, first: 0xffffffffffffffc1 },
3120    Node { op: Op::Identifier, flags: 0, a: Suggestion::PragmaName as u32, b: 0, first: 0xffffffffffffffc1 },
3121    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3122    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3123    Node { op: Op::Sequence, flags: 0, a: 1996, b: 2, first: 0x0000000000000008 },
3124    Node { op: Op::Repeat, flags: 0, a: 3082, b: 0, first: 0x0000000000000008 },
3125    Node { op: Op::Optional, flags: 2, a: 3083, b: 0, first: 0x0000000000000008 },
3126    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3127    Node { op: Op::Optional, flags: 2, a: 3085, b: 0, first: 0x0000000000000008 },
3128    Node { op: Op::Sequence, flags: 0, a: 1998, b: 3, first: 0xffffffffffffffcf },
3129    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3130    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3131    Node { op: Op::Sequence, flags: 0, a: 2001, b: 3, first: 0x0000000000000008 },
3132    Node { op: Op::Keyword, flags: 0, a: 319, b: 0, first: 0x0000000800000000 },
3133    Node { op: Op::Rule, flags: 0, a: 689, b: 3074, first: 0xffffffffffffffc1 },
3134    Node { op: Op::Sequence, flags: 0, a: 2004, b: 2, first: 0x0000000800000000 },
3135    Node { op: Op::Keyword, flags: 0, a: 320, b: 0, first: 0x0000001000000000 },
3136    Node { op: Op::Rule, flags: 0, a: 694, b: 3094, first: 0x0000001000000000 },
3137    Node { op: Op::Rule, flags: 0, a: 353, b: 1661, first: 0x0000200000000000 },
3138    Node { op: Op::Choice, flags: 0, a: 2006, b: 2, first: 0x0000201000000000 },
3139    Node { op: Op::Rule, flags: 0, a: 697, b: 3107, first: 0x2000000000000008 },
3140    Node { op: Op::Repeat, flags: 0, a: 3098, b: 0, first: 0x2000000000000008 },
3141    Node { op: Op::Optional, flags: 2, a: 3099, b: 0, first: 0x2000000000000008 },
3142    Node { op: Op::Rule, flags: 0, a: 52, b: 276, first: 0xffffffffffffffcf },
3143    Node { op: Op::Sequence, flags: 0, a: 2008, b: 2, first: 0xffffffffffffffcf },
3144    Node { op: Op::Rule, flags: 0, a: 706, b: 3139, first: 0x2000000000000000 },
3145    Node { op: Op::Rule, flags: 0, a: 556, b: 2559, first: 0x0000000000000008 },
3146    Node { op: Op::Rule, flags: 0, a: 681, b: 3051, first: 0x0000000000000008 },
3147    Node { op: Op::Rule, flags: 0, a: 949, b: 4114, first: 0x0000000000000008 },
3148    Node { op: Op::Choice, flags: 0, a: 2010, b: 4, first: 0x2000000000000008 },
3149    Node { op: Op::Keyword, flags: 0, a: 323, b: 0, first: 0x0000008000000000 },
3150    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
3151    Node { op: Op::Rule, flags: 0, a: 992, b: 4280, first: 0x0000000000000008 },
3152    Node { op: Op::Optional, flags: 2, a: 3110, b: 0, first: 0x0000000000000008 },
3153    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
3154    Node { op: Op::Rule, flags: 0, a: 896, b: 3906, first: 0xffffffffffffffcf },
3155    Node { op: Op::Sequence, flags: 0, a: 2014, b: 5, first: 0x0000008000000000 },
3156    Node { op: Op::Rule, flags: 0, a: 700, b: 3118, first: 0x0000020000000000 },
3157    Node { op: Op::Rule, flags: 0, a: 235, b: 1106, first: 0x0020000000000000 },
3158    Node { op: Op::Choice, flags: 0, a: 2019, b: 2, first: 0x0020020000000000 },
3159    Node { op: Op::Keyword, flags: 0, a: 325, b: 0, first: 0x0000020000000000 },
3160    Node { op: Op::Keyword, flags: 0, a: 326, b: 0, first: 0x0000040000000000 },
3161    Node { op: Op::Keyword, flags: 0, a: 217, b: 0, first: 0x0002000000000000 },
3162    Node { op: Op::Sequence, flags: 0, a: 2021, b: 2, first: 0x0000040000000000 },
3163    Node { op: Op::Rule, flags: 0, a: 960, b: 4152, first: 0xffffffffffffffff },
3164    Node { op: Op::Repeat, flags: 0, a: 3122, b: 0, first: 0xffffffffffffffff },
3165    Node { op: Op::Optional, flags: 2, a: 3123, b: 0, first: 0xffffffffffffffff },
3166    Node { op: Op::Rule, flags: 0, a: 96, b: 456, first: 0xffffffffffffffc1 },
3167    Node { op: Op::Rule, flags: 0, a: 799, b: 3477, first: 0xffffffffffffffc1 },
3168    Node { op: Op::Rule, flags: 0, a: 704, b: 3129, first: 0xffffffffffffffc1 },
3169    Node { op: Op::Choice, flags: 0, a: 2023, b: 3, first: 0xffffffffffffffc1 },
3170    Node { op: Op::Rule, flags: 0, a: 441, b: 2006, first: 0xffffffffffffffc1 },
3171    Node { op: Op::Rule, flags: 0, a: 95, b: 452, first: 0xffffffffffffffc1 },
3172    Node { op: Op::Rule, flags: 0, a: 798, b: 3474, first: 0xffffffffffffffc1 },
3173    Node { op: Op::Rule, flags: 0, a: 426, b: 1952, first: 0xffffffffffffffc5 },
3174    Node { op: Op::Choice, flags: 0, a: 2026, b: 3, first: 0xffffffffffffffc5 },
3175    Node { op: Op::Keyword, flags: 0, a: 287, b: 0, first: 0x2000000000000000 },
3176    Node { op: Op::Rule, flags: 0, a: 707, b: 3144, first: 0xffffffffffffffc9 },
3177    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3178    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3179    Node { op: Op::Sequence, flags: 0, a: 2029, b: 3, first: 0x0000000000000008 },
3180    Node { op: Op::Sequence, flags: 0, a: 2032, b: 2, first: 0x2000000000000000 },
3181    Node { op: Op::Rule, flags: 0, a: 114, b: 556, first: 0xffffffffffffffc1 },
3182    Node { op: Op::Repeat, flags: 0, a: 3140, b: 0, first: 0xffffffffffffffc1 },
3183    Node { op: Op::Optional, flags: 2, a: 3141, b: 0, first: 0xffffffffffffffc1 },
3184    Node { op: Op::Rule, flags: 0, a: 32, b: 194, first: 0x0000000000000008 },
3185    Node { op: Op::Sequence, flags: 0, a: 2034, b: 2, first: 0xffffffffffffffc9 },
3186    Node { op: Op::Rule, flags: 0, a: 93, b: 441, first: 0xffffffffffffffc1 },
3187    Node { op: Op::Optional, flags: 2, a: 3145, b: 0, first: 0xffffffffffffffc1 },
3188    Node { op: Op::Rule, flags: 0, a: 796, b: 3468, first: 0xffffffffffffffc1 },
3189    Node { op: Op::Optional, flags: 2, a: 3147, b: 0, first: 0xffffffffffffffc1 },
3190    Node { op: Op::Rule, flags: 0, a: 827, b: 3569, first: 0xffffffffffffffc1 },
3191    Node { op: Op::Sequence, flags: 0, a: 2036, b: 3, first: 0xffffffffffffffc1 },
3192    Node { op: Op::Rule, flags: 0, a: 712, b: 3168, first: 0xffffffffffffffc1 },
3193    Node { op: Op::Rule, flags: 0, a: 994, b: 4295, first: 0x0000000000000008 },
3194    Node { op: Op::Optional, flags: 2, a: 3152, b: 0, first: 0x0000000000000008 },
3195    Node { op: Op::Sequence, flags: 0, a: 2039, b: 2, first: 0xffffffffffffffc1 },
3196    Node { op: Op::Rule, flags: 0, a: 93, b: 441, first: 0xffffffffffffffc1 },
3197    Node { op: Op::Optional, flags: 2, a: 3155, b: 0, first: 0xffffffffffffffc1 },
3198    Node { op: Op::Rule, flags: 0, a: 796, b: 3468, first: 0xffffffffffffffc1 },
3199    Node { op: Op::Repeat, flags: 0, a: 3157, b: 0, first: 0xffffffffffffffc1 },
3200    Node { op: Op::Optional, flags: 2, a: 3158, b: 0, first: 0xffffffffffffffc1 },
3201    Node { op: Op::Rule, flags: 0, a: 929, b: 4029, first: 0xffffffffffffffc1 },
3202    Node { op: Op::Sequence, flags: 0, a: 2041, b: 3, first: 0xffffffffffffffc1 },
3203    Node { op: Op::Rule, flags: 0, a: 97, b: 461, first: 0xffffffffffffffc1 },
3204    Node { op: Op::Rule, flags: 0, a: 800, b: 3480, first: 0xffffffffffffffc1 },
3205    Node { op: Op::Choice, flags: 0, a: 2044, b: 2, first: 0xffffffffffffffc1 },
3206    Node { op: Op::Rule, flags: 0, a: 99, b: 471, first: 0xffffffffffffffc1 },
3207    Node { op: Op::Rule, flags: 0, a: 802, b: 3487, first: 0xffffffffffffffc1 },
3208    Node { op: Op::Rule, flags: 0, a: 996, b: 4297, first: 0xffffffffffffffc1 },
3209    Node { op: Op::Choice, flags: 0, a: 2046, b: 3, first: 0xffffffffffffffc1 },
3210    Node { op: Op::Keyword, flags: 0, a: 334, b: 0, first: 0x0004000000000000 },
3211    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3212    Node { op: Op::Sequence, flags: 0, a: 2049, b: 2, first: 0x0004000000000000 },
3213    Node { op: Op::Keyword, flags: 0, a: 335, b: 0, first: 0x0008000000000000 },
3214    Node { op: Op::Keyword, flags: 0, a: 336, b: 0, first: 0x0010000000000000 },
3215    Node { op: Op::Choice, flags: 0, a: 2051, b: 2, first: 0x0018000000000000 },
3216    Node { op: Op::Symbol, flags: 0, a: 1, b: 0, first: 0x0000000000000008 },
3217    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
3218    Node { op: Op::Sequence, flags: 0, a: 2053, b: 2, first: 0x0000000000000008 },
3219    Node { op: Op::Keyword, flags: 0, a: 337, b: 0, first: 0x0020000000000000 },
3220    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
3221    Node { op: Op::Optional, flags: 2, a: 3179, b: 0, first: 0x0000000004000000 },
3222    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
3223    Node { op: Op::Sequence, flags: 0, a: 2055, b: 3, first: 0x0020000000000000 },
3224    Node { op: Op::Keyword, flags: 0, a: 338, b: 0, first: 0x0040000000000000 },
3225    Node { op: Op::Keyword, flags: 0, a: 286, b: 0, first: 0x1000000000000000 },
3226    Node { op: Op::Rule, flags: 0, a: 718, b: 3184, first: 0x1000000000000000 },
3227    Node { op: Op::Rule, flags: 0, a: 721, b: 3191, first: 0x0000008000000000 },
3228    Node { op: Op::Choice, flags: 0, a: 2058, b: 2, first: 0x1000008000000000 },
3229    Node { op: Op::Keyword, flags: 0, a: 339, b: 0, first: 0x0080000000000000 },
3230    Node { op: Op::Rule, flags: 0, a: 719, b: 3187, first: 0x1000008000000000 },
3231    Node { op: Op::Sequence, flags: 0, a: 2060, b: 2, first: 0x0080000000000000 },
3232    Node { op: Op::Keyword, flags: 0, a: 497, b: 0, first: 0x0000008000000000 },
3233    Node { op: Op::Keyword, flags: 0, a: 340, b: 0, first: 0x0100000000000000 },
3234    Node { op: Op::Keyword, flags: 0, a: 343, b: 0, first: 0x0800000000000000 },
3235    Node { op: Op::Keyword, flags: 0, a: 346, b: 0, first: 0x4000000000000000 },
3236    Node { op: Op::Rule, flags: 0, a: 725, b: 3201, first: 0x0400010000000000 },
3237    Node { op: Op::Rule, flags: 0, a: 725, b: 3201, first: 0x0400010000000000 },
3238    Node { op: Op::Optional, flags: 2, a: 3196, b: 0, first: 0x0400010000000000 },
3239    Node { op: Op::Sequence, flags: 0, a: 2062, b: 3, first: 0x4000000000000000 },
3240    Node { op: Op::Rule, flags: 0, a: 726, b: 3206, first: 0x0000010000000000 },
3241    Node { op: Op::Rule, flags: 0, a: 727, b: 3211, first: 0x0400000000000000 },
3242    Node { op: Op::Choice, flags: 0, a: 2065, b: 2, first: 0x0400010000000000 },
3243    Node { op: Op::Keyword, flags: 0, a: 266, b: 0, first: 0x0000010000000000 },
3244    Node { op: Op::Keyword, flags: 0, a: 425, b: 0, first: 0x0000000002000000 },
3245    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
3246    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
3247    Node { op: Op::Sequence, flags: 0, a: 2067, b: 4, first: 0x0000010000000000 },
3248    Node { op: Op::Keyword, flags: 0, a: 284, b: 0, first: 0x0400000000000000 },
3249    Node { op: Op::Keyword, flags: 0, a: 425, b: 0, first: 0x0000000002000000 },
3250    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
3251    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
3252    Node { op: Op::Sequence, flags: 0, a: 2071, b: 4, first: 0x0400000000000000 },
3253    Node { op: Op::Symbol, flags: 0, a: 10, b: 0, first: 0x0000000000000008 },
3254    Node { op: Op::Symbol, flags: 0, a: 39, b: 0, first: 0x0000000000000008 },
3255    Node { op: Op::Keyword, flags: 0, a: 348, b: 0, first: 0x0000000000000001 },
3256    Node { op: Op::Keyword, flags: 0, a: 147, b: 0, first: 0x0000002000000000 },
3257    Node { op: Op::Keyword, flags: 0, a: 358, b: 0, first: 0x0000000000010000 },
3258    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
3259    Node { op: Op::Rule, flags: 0, a: 48, b: 250, first: 0x0000000004000000 },
3260    Node { op: Op::Optional, flags: 2, a: 3218, b: 0, first: 0x0000000004000000 },
3261    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
3262    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3263    Node { op: Op::Sequence, flags: 0, a: 2075, b: 7, first: 0x0000000000000001 },
3264    Node { op: Op::Rule, flags: 0, a: 41, b: 222, first: 0x0000000020000000 },
3265    Node { op: Op::Optional, flags: 2, a: 3223, b: 0, first: 0x0000000020000000 },
3266    Node { op: Op::Rule, flags: 0, a: 498, b: 2285, first: 0x0810100081400000 },
3267    Node { op: Op::Optional, flags: 2, a: 3225, b: 0, first: 0x0810100081400000 },
3268    Node { op: Op::Keyword, flags: 0, a: 215, b: 0, first: 0x0000800000000000 },
3269    Node { op: Op::Rule, flags: 0, a: 936, b: 4060, first: 0xffffffffffffffcd },
3270    Node { op: Op::Rule, flags: 0, a: 497, b: 2278, first: 0x0800000000000200 },
3271    Node { op: Op::Sequence, flags: 0, a: 2082, b: 5, first: 0x08109000a1400000 },
3272    Node { op: Op::Rule, flags: 0, a: 735, b: 3251, first: 0xffffffffffffffc5 },
3273    Node { op: Op::Rule, flags: 0, a: 733, b: 3237, first: 0x0000000000000008 },
3274    Node { op: Op::Optional, flags: 2, a: 3232, b: 0, first: 0x0000000000000008 },
3275    Node { op: Op::Sequence, flags: 0, a: 2087, b: 2, first: 0xffffffffffffffc5 },
3276    Node { op: Op::Symbol, flags: 0, a: 36, b: 0, first: 0x0000000000000008 },
3277    Node { op: Op::Rule, flags: 0, a: 226, b: 1090, first: 0xffffffffffffffcf },
3278    Node { op: Op::Sequence, flags: 0, a: 2089, b: 2, first: 0x0000000000000008 },
3279    Node { op: Op::Rule, flags: 0, a: 732, b: 3234, first: 0xffffffffffffffc5 },
3280    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3281    Node { op: Op::Sequence, flags: 0, a: 2091, b: 2, first: 0x0000000000000008 },
3282    Node { op: Op::Repeat, flags: 0, a: 3240, b: 0, first: 0x0000000000000008 },
3283    Node { op: Op::Optional, flags: 2, a: 3241, b: 0, first: 0x0000000000000008 },
3284    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3285    Node { op: Op::Optional, flags: 2, a: 3243, b: 0, first: 0x0000000000000008 },
3286    Node { op: Op::Sequence, flags: 0, a: 2093, b: 3, first: 0xffffffffffffffc5 },
3287    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3288    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3289    Node { op: Op::Sequence, flags: 0, a: 2096, b: 3, first: 0x0000000000000008 },
3290    Node { op: Op::Rule, flags: 0, a: 268, b: 1231, first: 0xffffffffffffffc1 },
3291    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
3292    Node { op: Op::Choice, flags: 0, a: 2099, b: 2, first: 0xffffffffffffffc5 },
3293    Node { op: Op::Rule, flags: 0, a: 734, b: 3248, first: 0x0000000000000008 },
3294    Node { op: Op::Rule, flags: 0, a: 613, b: 2773, first: 0x0000001400000000 },
3295    Node { op: Op::Choice, flags: 0, a: 2101, b: 2, first: 0x0000001400000008 },
3296    Node { op: Op::Keyword, flags: 0, a: 352, b: 0, first: 0x0000000000000400 },
3297    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
3298    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
3299    Node { op: Op::Sequence, flags: 0, a: 2103, b: 3, first: 0x0000000000000400 },
3300    Node { op: Op::Rule, flags: 0, a: 737, b: 3258, first: 0x0000000000000400 },
3301    Node { op: Op::Keyword, flags: 0, a: 352, b: 0, first: 0x0000000000000400 },
3302    Node { op: Op::Keyword, flags: 0, a: 63, b: 0, first: 0x0000000000000800 },
3303    Node { op: Op::Optional, flags: 2, a: 3261, b: 0, first: 0x0000000000000800 },
3304    Node { op: Op::Rule, flags: 0, a: 581, b: 2678, first: 0xffffffffffffffc1 },
3305    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
3306    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
3307    Node { op: Op::Sequence, flags: 0, a: 2106, b: 5, first: 0x0000000000000400 },
3308    Node { op: Op::Rule, flags: 0, a: 742, b: 3284, first: 0x0000000000000008 },
3309    Node { op: Op::Rule, flags: 0, a: 878, b: 3779, first: 0xffffffffffffffc5 },
3310    Node { op: Op::Choice, flags: 0, a: 2111, b: 2, first: 0xffffffffffffffcd },
3311    Node { op: Op::Rule, flags: 0, a: 306, b: 1458, first: 0xffffffffffffffc5 },
3312    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
3313    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
3314    Node { op: Op::Sequence, flags: 0, a: 2113, b: 3, first: 0xffffffffffffffc5 },
3315    Node { op: Op::Rule, flags: 0, a: 741, b: 3273, first: 0xffffffffffffffc5 },
3316    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3317    Node { op: Op::Sequence, flags: 0, a: 2116, b: 2, first: 0x0000000000000008 },
3318    Node { op: Op::Repeat, flags: 0, a: 3276, b: 0, first: 0x0000000000000008 },
3319    Node { op: Op::Optional, flags: 2, a: 3277, b: 0, first: 0x0000000000000008 },
3320    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3321    Node { op: Op::Optional, flags: 2, a: 3279, b: 0, first: 0x0000000000000008 },
3322    Node { op: Op::Sequence, flags: 0, a: 2118, b: 3, first: 0xffffffffffffffc5 },
3323    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3324    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3325    Node { op: Op::Sequence, flags: 0, a: 2121, b: 3, first: 0x0000000000000008 },
3326    Node { op: Op::Keyword, flags: 0, a: 352, b: 0, first: 0x0000000000000400 },
3327    Node { op: Op::Rule, flags: 0, a: 740, b: 3269, first: 0xffffffffffffffcd },
3328    Node { op: Op::Sequence, flags: 0, a: 2124, b: 2, first: 0x0000000000000400 },
3329    Node { op: Op::Keyword, flags: 0, a: 353, b: 0, first: 0x0000000000000800 },
3330    Node { op: Op::Rule, flags: 0, a: 789, b: 3453, first: 0x0000000000000002 },
3331    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3332    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3333    Node { op: Op::Sequence, flags: 0, a: 2126, b: 3, first: 0x0000000000000008 },
3334    Node { op: Op::Sequence, flags: 0, a: 2129, b: 2, first: 0x0000000000000800 },
3335    Node { op: Op::Rule, flags: 0, a: 748, b: 3312, first: 0xffffffffffffffcf },
3336    Node { op: Op::Rule, flags: 0, a: 747, b: 3311, first: 0x0000000000000008 },
3337    Node { op: Op::Choice, flags: 0, a: 2131, b: 2, first: 0xffffffffffffffcf },
3338    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3339    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
3340    Node { op: Op::Rule, flags: 0, a: 137, b: 667, first: 0xffffffffffffffc5 },
3341    Node { op: Op::Sequence, flags: 0, a: 2133, b: 3, first: 0xffffffffffffffcf },
3342    Node { op: Op::Rule, flags: 0, a: 746, b: 3300, first: 0xffffffffffffffcf },
3343    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3344    Node { op: Op::Sequence, flags: 0, a: 2136, b: 2, first: 0x0000000000000008 },
3345    Node { op: Op::Repeat, flags: 0, a: 3303, b: 0, first: 0x0000000000000008 },
3346    Node { op: Op::Optional, flags: 2, a: 3304, b: 0, first: 0x0000000000000008 },
3347    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3348    Node { op: Op::Optional, flags: 2, a: 3306, b: 0, first: 0x0000000000000008 },
3349    Node { op: Op::Sequence, flags: 0, a: 2138, b: 3, first: 0xffffffffffffffcf },
3350    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3351    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3352    Node { op: Op::Sequence, flags: 0, a: 2141, b: 3, first: 0x0000000000000008 },
3353    Node { op: Op::Rule, flags: 0, a: 746, b: 3300, first: 0xffffffffffffffcf },
3354    Node { op: Op::Keyword, flags: 0, a: 354, b: 0, first: 0x0000000000001000 },
3355    Node { op: Op::Rule, flags: 0, a: 745, b: 3296, first: 0xffffffffffffffcf },
3356    Node { op: Op::Sequence, flags: 0, a: 2144, b: 2, first: 0x0000000000001000 },
3357    Node { op: Op::Keyword, flags: 0, a: 492, b: 0, first: 0x0000000400000000 },
3358    Node { op: Op::Optional, flags: 2, a: 3316, b: 0, first: 0x0000000400000000 },
3359    Node { op: Op::Keyword, flags: 0, a: 322, b: 0, first: 0x0000000000000001 },
3360    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
3361    Node { op: Op::Sequence, flags: 0, a: 2146, b: 3, first: 0x0000000400000001 },
3362    Node { op: Op::Keyword, flags: 0, a: 467, b: 0, first: 0x0000000000000200 },
3363    Node { op: Op::Optional, flags: 2, a: 3321, b: 0, first: 0x0000000000000200 },
3364    Node { op: Op::Keyword, flags: 0, a: 332, b: 0, first: 0x0000000000000001 },
3365    Node { op: Op::Keyword, flags: 0, a: 218, b: 0, first: 0x0000000000000001 },
3366    Node { op: Op::Keyword, flags: 0, a: 217, b: 0, first: 0x0002000000000000 },
3367    Node { op: Op::Choice, flags: 0, a: 2149, b: 2, first: 0x0002000000000001 },
3368    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
3369    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3370    Node { op: Op::Sequence, flags: 0, a: 2151, b: 2, first: 0x0000000000000008 },
3371    Node { op: Op::Repeat, flags: 0, a: 3329, b: 0, first: 0x0000000000000008 },
3372    Node { op: Op::Optional, flags: 2, a: 3330, b: 0, first: 0x0000000000000008 },
3373    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3374    Node { op: Op::Optional, flags: 2, a: 3332, b: 0, first: 0x0000000000000008 },
3375    Node { op: Op::Sequence, flags: 0, a: 2153, b: 3, first: 0x0000000000000004 },
3376    Node { op: Op::Sequence, flags: 0, a: 2156, b: 4, first: 0x0000000000000201 },
3377    Node { op: Op::Identifier, flags: 1, a: Suggestion::ColumnName as u32, b: 0, first: 0xffffffffffffffc1 },
3378    Node { op: Op::Identifier, flags: 1, a: Suggestion::ScalarFunctionName as u32, b: 0, first: 0xffffffffffffffc1 },
3379    Node { op: Op::Identifier, flags: 1, a: Suggestion::Variable as u32, b: 0, first: 0xffffffffffffffc1 },
3380    Node { op: Op::Rule, flags: 0, a: 754, b: 3338, first: 0xffffffffffffffc1 },
3381    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
3382    Node { op: Op::Choice, flags: 0, a: 2160, b: 2, first: 0xffffffffffffffc5 },
3383    Node { op: Op::Identifier, flags: 1, a: Suggestion::Variable as u32, b: 0, first: 0xffffffffffffffc1 },
3384    Node { op: Op::Identifier, flags: 1, a: Suggestion::Variable as u32, b: 0, first: 0xffffffffffffffc1 },
3385    Node { op: Op::Identifier, flags: 1, a: Suggestion::SchemaName as u32, b: 0, first: 0xffffffffffffffc1 },
3386    Node { op: Op::Rule, flags: 0, a: 758, b: 3344, first: 0xffffffffffffffc1 },
3387    Node { op: Op::Symbol, flags: 0, a: 47, b: 0, first: 0x000000000000000a },
3388    Node { op: Op::Sequence, flags: 0, a: 2162, b: 2, first: 0xffffffffffffffc1 },
3389    Node { op: Op::Identifier, flags: 1, a: Suggestion::TableName as u32, b: 0, first: 0xffffffffffffffc5 },
3390    Node { op: Op::Rule, flags: 0, a: 760, b: 3348, first: 0xffffffffffffffc5 },
3391    Node { op: Op::Symbol, flags: 0, a: 47, b: 0, first: 0x000000000000000a },
3392    Node { op: Op::Sequence, flags: 0, a: 2164, b: 2, first: 0xffffffffffffffc5 },
3393    Node { op: Op::Identifier, flags: 1, a: Suggestion::TypeName as u32, b: 0, first: 0xffffffffffffffc1 },
3394    Node { op: Op::Keyword, flags: 0, a: 357, b: 0, first: 0x0000000000008000 },
3395    Node { op: Op::Rule, flags: 0, a: 734, b: 3248, first: 0x0000000000000008 },
3396    Node { op: Op::Sequence, flags: 0, a: 2166, b: 2, first: 0x0000000000008000 },
3397    Node { op: Op::Keyword, flags: 0, a: 357, b: 0, first: 0x0000000000008000 },
3398    Node { op: Op::Keyword, flags: 0, a: 306, b: 0, first: 0x0000000000400000 },
3399    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
3400    Node { op: Op::Sequence, flags: 0, a: 2168, b: 3, first: 0x0000000000008000 },
3401    Node { op: Op::Keyword, flags: 0, a: 357, b: 0, first: 0x0000000000008000 },
3402    Node { op: Op::Keyword, flags: 0, a: 404, b: 0, first: 0x4000000000000000 },
3403    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
3404    Node { op: Op::Sequence, flags: 0, a: 2171, b: 3, first: 0x0000000000008000 },
3405    Node { op: Op::Keyword, flags: 0, a: 357, b: 0, first: 0x0000000000008000 },
3406    Node { op: Op::Rule, flags: 0, a: 847, b: 3651, first: 0xffffffffffffffc1 },
3407    Node { op: Op::Sequence, flags: 0, a: 2174, b: 2, first: 0x0000000000008000 },
3408    Node { op: Op::Keyword, flags: 0, a: 360, b: 0, first: 0x0000000000040000 },
3409    Node { op: Op::Keyword, flags: 0, a: 277, b: 0, first: 0x0008000000000000 },
3410    Node { op: Op::Sequence, flags: 0, a: 2176, b: 2, first: 0x0000000000040000 },
3411    Node { op: Op::Keyword, flags: 0, a: 362, b: 0, first: 0x0000000000100000 },
3412    Node { op: Op::Keyword, flags: 0, a: 362, b: 0, first: 0x0000000000100000 },
3413    Node { op: Op::Rule, flags: 0, a: 639, b: 2844, first: 0x0000000000000080 },
3414    Node { op: Op::Optional, flags: 2, a: 3372, b: 0, first: 0x0000000000000080 },
3415    Node { op: Op::Rule, flags: 0, a: 514, b: 2358, first: 0x4100020000000000 },
3416    Node { op: Op::Optional, flags: 2, a: 3374, b: 0, first: 0x4100020000000000 },
3417    Node { op: Op::Sequence, flags: 2, a: 2178, b: 2, first: 0x4100020000000080 },
3418    Node { op: Op::Keyword, flags: 0, a: 363, b: 0, first: 0x0000000000200000 },
3419    Node { op: Op::Rule, flags: 0, a: 943, b: 4098, first: 0xffffffffffffffcf },
3420    Node { op: Op::Sequence, flags: 0, a: 2180, b: 2, first: 0x0000000000200000 },
3421    Node { op: Op::Keyword, flags: 0, a: 366, b: 0, first: 0x0000000001000000 },
3422    Node { op: Op::Keyword, flags: 0, a: 295, b: 0, first: 0x0000000000000800 },
3423    Node { op: Op::Optional, flags: 2, a: 3381, b: 0, first: 0x0000000000000800 },
3424    Node { op: Op::Sequence, flags: 0, a: 2182, b: 2, first: 0x0000000001000000 },
3425    Node { op: Op::Rule, flags: 0, a: 0, b: 2, first: 0x0000000004000040 },
3426    Node { op: Op::Rule, flags: 0, a: 963, b: 4162, first: 0x0000012000000000 },
3427    Node { op: Op::Optional, flags: 2, a: 3385, b: 0, first: 0x0000012000000000 },
3428    Node { op: Op::Sequence, flags: 0, a: 2184, b: 2, first: 0x0000000004000040 },
3429    Node { op: Op::Keyword, flags: 0, a: 369, b: 0, first: 0x0000000008000000 },
3430    Node { op: Op::Keyword, flags: 0, a: 370, b: 0, first: 0x0000000010000000 },
3431    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3432    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3433    Node { op: Op::Sequence, flags: 0, a: 2186, b: 2, first: 0x0000000000000008 },
3434    Node { op: Op::Repeat, flags: 0, a: 3392, b: 0, first: 0x0000000000000008 },
3435    Node { op: Op::Optional, flags: 2, a: 3393, b: 0, first: 0x0000000000000008 },
3436    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3437    Node { op: Op::Optional, flags: 2, a: 3395, b: 0, first: 0x0000000000000008 },
3438    Node { op: Op::Sequence, flags: 0, a: 2188, b: 3, first: 0xffffffffffffffcf },
3439    Node { op: Op::Optional, flags: 2, a: 3397, b: 0, first: 0xffffffffffffffcf },
3440    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3441    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3442    Node { op: Op::Sequence, flags: 0, a: 2191, b: 3, first: 0x0000000000000008 },
3443    Node { op: Op::Sequence, flags: 0, a: 2194, b: 2, first: 0x0000000010000000 },
3444    Node { op: Op::Keyword, flags: 0, a: 370, b: 0, first: 0x0000000010000000 },
3445    Node { op: Op::Keyword, flags: 0, a: 371, b: 0, first: 0x0000000020000000 },
3446    Node { op: Op::Choice, flags: 0, a: 2196, b: 2, first: 0x0000000030000000 },
3447    Node { op: Op::Keyword, flags: 0, a: 370, b: 0, first: 0x0000000010000000 },
3448    Node { op: Op::Keyword, flags: 0, a: 418, b: 0, first: 0x0000000000040000 },
3449    Node { op: Op::Choice, flags: 0, a: 2198, b: 2, first: 0x0000000010040000 },
3450    Node { op: Op::Rule, flags: 0, a: 777, b: 3408, first: 0x0000000010040000 },
3451    Node { op: Op::Rule, flags: 0, a: 118, b: 577, first: 0x0000000000000008 },
3452    Node { op: Op::Optional, flags: 2, a: 3410, b: 0, first: 0x0000000000000008 },
3453    Node { op: Op::Sequence, flags: 0, a: 2200, b: 2, first: 0x0000000010040000 },
3454    Node { op: Op::Keyword, flags: 0, a: 371, b: 0, first: 0x0000000020000000 },
3455    Node { op: Op::Rule, flags: 0, a: 938, b: 4064, first: 0x0000000008000000 },
3456    Node { op: Op::Rule, flags: 0, a: 1035, b: 4485, first: 0x0000000000000200 },
3457    Node { op: Op::Choice, flags: 0, a: 2202, b: 2, first: 0x0000000008000200 },
3458    Node { op: Op::Rule, flags: 0, a: 782, b: 3425, first: 0xffffffffffffffcb },
3459    Node { op: Op::Sequence, flags: 0, a: 2204, b: 2, first: 0x0000000008000200 },
3460    Node { op: Op::Rule, flags: 0, a: 791, b: 3459, first: 0x000000000000000a },
3461    Node { op: Op::Rule, flags: 0, a: 790, b: 3456, first: 0x0000000022000008 },
3462    Node { op: Op::Optional, flags: 2, a: 3420, b: 0, first: 0x0000000022000008 },
3463    Node { op: Op::Sequence, flags: 0, a: 2206, b: 2, first: 0x000000000000000a },
3464    Node { op: Op::Rule, flags: 0, a: 784, b: 3441, first: 0xffffffffffffffc9 },
3465    Node { op: Op::Rule, flags: 0, a: 783, b: 3432, first: 0x000000000000000a },
3466    Node { op: Op::Choice, flags: 0, a: 2208, b: 2, first: 0xffffffffffffffcb },
3467    Node { op: Op::Rule, flags: 0, a: 781, b: 3422, first: 0x000000000000000a },
3468    Node { op: Op::Rule, flags: 0, a: 787, b: 3451, first: 0xffffffffffffffc1 },
3469    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3470    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3471    Node { op: Op::Sequence, flags: 0, a: 2210, b: 3, first: 0x0000000000000008 },
3472    Node { op: Op::Optional, flags: 2, a: 3430, b: 0, first: 0x0000000000000008 },
3473    Node { op: Op::Sequence, flags: 0, a: 2213, b: 2, first: 0x000000000000000a },
3474    Node { op: Op::Rule, flags: 0, a: 785, b: 3442, first: 0xffffffffffffffc1 },
3475    Node { op: Op::Optional, flags: 2, a: 3433, b: 0, first: 0xffffffffffffffc1 },
3476    Node { op: Op::Rule, flags: 0, a: 781, b: 3422, first: 0x000000000000000a },
3477    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3478    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3479    Node { op: Op::Sequence, flags: 0, a: 2215, b: 3, first: 0x0000000000000008 },
3480    Node { op: Op::Rule, flags: 0, a: 744, b: 3293, first: 0x0000000000000800 },
3481    Node { op: Op::Optional, flags: 2, a: 3439, b: 0, first: 0x0000000000000800 },
3482    Node { op: Op::Sequence, flags: 0, a: 2218, b: 3, first: 0xffffffffffffffc9 },
3483    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
3484    Node { op: Op::Symbol, flags: 0, a: 32, b: 0, first: 0x0000000000000008 },
3485    Node { op: Op::Keyword, flags: 0, a: 309, b: 0, first: 0x0000000002000000 },
3486    Node { op: Op::Choice, flags: 0, a: 2221, b: 2, first: 0x0000000002000008 },
3487    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
3488    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3489    Node { op: Op::Rule, flags: 0, a: 789, b: 3453, first: 0x0000000000000002 },
3490    Node { op: Op::Sequence, flags: 0, a: 2223, b: 2, first: 0x0000000000000008 },
3491    Node { op: Op::Optional, flags: 2, a: 3449, b: 0, first: 0x0000000000000008 },
3492    Node { op: Op::Sequence, flags: 0, a: 2225, b: 2, first: 0xffffffffffffffc1 },
3493    Node { op: Op::Keyword, flags: 0, a: 371, b: 0, first: 0x0000000020000000 },
3494    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
3495    Node { op: Op::Rule, flags: 0, a: 786, b: 3445, first: 0x0000000002000008 },
3496    Node { op: Op::Rule, flags: 0, a: 788, b: 3452, first: 0x0000000020000000 },
3497    Node { op: Op::Choice, flags: 0, a: 2227, b: 2, first: 0x0000000022000008 },
3498    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
3499    Node { op: Op::Rule, flags: 0, a: 652, b: 2909, first: 0x0000000000000008 },
3500    Node { op: Op::Choice, flags: 0, a: 2229, b: 2, first: 0x000000000000000a },
3501    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3502    Node { op: Op::Identifier, flags: 0, a: Suggestion::SchemaName as u32, b: 0, first: 0xffffffffffffffc1 },
3503    Node { op: Op::Rule, flags: 0, a: 793, b: 3461, first: 0xffffffffffffffc1 },
3504    Node { op: Op::Rule, flags: 0, a: 179, b: 808, first: 0x0000000200000000 },
3505    Node { op: Op::Rule, flags: 0, a: 163, b: 752, first: 0x0000002000000000 },
3506    Node { op: Op::Choice, flags: 0, a: 2231, b: 2, first: 0x0000002200000000 },
3507    Node { op: Op::Rule, flags: 0, a: 793, b: 3461, first: 0xffffffffffffffc1 },
3508    Node { op: Op::Symbol, flags: 0, a: 47, b: 0, first: 0x000000000000000a },
3509    Node { op: Op::Sequence, flags: 0, a: 2233, b: 2, first: 0xffffffffffffffc1 },
3510    Node { op: Op::Rule, flags: 0, a: 796, b: 3468, first: 0xffffffffffffffc1 },
3511    Node { op: Op::Rule, flags: 0, a: 753, b: 3337, first: 0xffffffffffffffc1 },
3512    Node { op: Op::Sequence, flags: 0, a: 2235, b: 2, first: 0xffffffffffffffc1 },
3513    Node { op: Op::Rule, flags: 0, a: 796, b: 3468, first: 0xffffffffffffffc1 },
3514    Node { op: Op::Rule, flags: 0, a: 755, b: 3341, first: 0xffffffffffffffc5 },
3515    Node { op: Op::Sequence, flags: 0, a: 2237, b: 2, first: 0xffffffffffffffc1 },
3516    Node { op: Op::Rule, flags: 0, a: 796, b: 3468, first: 0xffffffffffffffc1 },
3517    Node { op: Op::Rule, flags: 0, a: 756, b: 3342, first: 0xffffffffffffffc1 },
3518    Node { op: Op::Sequence, flags: 0, a: 2239, b: 2, first: 0xffffffffffffffc1 },
3519    Node { op: Op::Rule, flags: 0, a: 796, b: 3468, first: 0xffffffffffffffc1 },
3520    Node { op: Op::Rule, flags: 0, a: 760, b: 3348, first: 0xffffffffffffffc5 },
3521    Node { op: Op::Sequence, flags: 0, a: 2241, b: 2, first: 0xffffffffffffffc1 },
3522    Node { op: Op::Rule, flags: 0, a: 796, b: 3468, first: 0xffffffffffffffc1 },
3523    Node { op: Op::Rule, flags: 0, a: 761, b: 3351, first: 0xffffffffffffffc5 },
3524    Node { op: Op::Rule, flags: 0, a: 752, b: 3336, first: 0xffffffffffffffc1 },
3525    Node { op: Op::Sequence, flags: 0, a: 2243, b: 3, first: 0xffffffffffffffc1 },
3526    Node { op: Op::Rule, flags: 0, a: 796, b: 3468, first: 0xffffffffffffffc1 },
3527    Node { op: Op::Rule, flags: 0, a: 762, b: 3352, first: 0xffffffffffffffc1 },
3528    Node { op: Op::Sequence, flags: 0, a: 2246, b: 2, first: 0xffffffffffffffc1 },
3529    Node { op: Op::Keyword, flags: 0, a: 380, b: 0, first: 0x0000004000000000 },
3530    Node { op: Op::Keyword, flags: 0, a: 381, b: 0, first: 0x0000008000000000 },
3531    Node { op: Op::Choice, flags: 0, a: 2248, b: 2, first: 0x000000c000000000 },
3532    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
3533    Node { op: Op::Keyword, flags: 0, a: 189, b: 0, first: 0x0000000000200000 },
3534    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
3535    Node { op: Op::Sequence, flags: 0, a: 2250, b: 2, first: 0x0000000000200000 },
3536    Node { op: Op::Rule, flags: 0, a: 811, b: 3515, first: 0x0000000000000008 },
3537    Node { op: Op::Rule, flags: 0, a: 816, b: 3537, first: 0x4a4808003a208008 },
3538    Node { op: Op::Choice, flags: 0, a: 2252, b: 2, first: 0x4a4808003a208008 },
3539    Node { op: Op::Keyword, flags: 0, a: 385, b: 0, first: 0x0000080000000000 },
3540    Node { op: Op::Rule, flags: 0, a: 256, b: 1186, first: 0x0000000000008200 },
3541    Node { op: Op::Optional, flags: 2, a: 3499, b: 0, first: 0x0000000000008200 },
3542    Node { op: Op::Rule, flags: 0, a: 943, b: 4098, first: 0xffffffffffffffcf },
3543    Node { op: Op::Optional, flags: 2, a: 3501, b: 0, first: 0xffffffffffffffcf },
3544    Node { op: Op::Sequence, flags: 0, a: 2254, b: 3, first: 0x0000080000000000 },
3545    Node { op: Op::Rule, flags: 0, a: 809, b: 3510, first: 0x0000080000000000 },
3546    Node { op: Op::Rule, flags: 0, a: 374, b: 1743, first: 0x0008000000000000 },
3547    Node { op: Op::Choice, flags: 0, a: 2257, b: 2, first: 0x0008080000000000 },
3548    Node { op: Op::Rule, flags: 0, a: 807, b: 3503, first: 0x0000080000000000 },
3549    Node { op: Op::Rule, flags: 0, a: 371, b: 1733, first: 0x0008000000000000 },
3550    Node { op: Op::Optional, flags: 2, a: 3508, b: 0, first: 0x0008000000000000 },
3551    Node { op: Op::Sequence, flags: 0, a: 2259, b: 2, first: 0x0000080000000000 },
3552    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
3553    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
3554    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3555    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3556    Node { op: Op::Sequence, flags: 0, a: 2261, b: 3, first: 0x0000000000000008 },
3557    Node { op: Op::Rule, flags: 0, a: 468, b: 2123, first: 0x4a4808003a208008 },
3558    Node { op: Op::Rule, flags: 0, a: 813, b: 3523, first: 0x0100000004000000 },
3559    Node { op: Op::Repeat, flags: 0, a: 3517, b: 0, first: 0x0100000004000000 },
3560    Node { op: Op::Optional, flags: 2, a: 3518, b: 0, first: 0x0100000004000000 },
3561    Node { op: Op::Sequence, flags: 0, a: 2264, b: 2, first: 0x4a4808003a208008 },
3562    Node { op: Op::Rule, flags: 0, a: 849, b: 3660, first: 0x0100000004000000 },
3563    Node { op: Op::Rule, flags: 0, a: 468, b: 2123, first: 0x4a4808003a208008 },
3564    Node { op: Op::Sequence, flags: 0, a: 2266, b: 2, first: 0x0100000004000000 },
3565    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
3566    Node { op: Op::Rule, flags: 0, a: 1065, b: 4645, first: 0x0000000400000000 },
3567    Node { op: Op::Optional, flags: 2, a: 3525, b: 0, first: 0x0000000400000000 },
3568    Node { op: Op::Rule, flags: 0, a: 812, b: 3520, first: 0x4a4808003a208008 },
3569    Node { op: Op::Rule, flags: 2, a: 770, b: 3376, first: 0x4100020000000080 },
3570    Node { op: Op::Optional, flags: 2, a: 3528, b: 0, first: 0x4100020000000080 },
3571    Node { op: Op::Sequence, flags: 0, a: 2268, b: 3, first: 0x4a4808043a208008 },
3572    Node { op: Op::Rule, flags: 0, a: 635, b: 2828, first: 0x0008080000000008 },
3573    Node { op: Op::Rule, flags: 0, a: 1042, b: 4533, first: 0x0000000000008000 },
3574    Node { op: Op::Rule, flags: 0, a: 248, b: 1162, first: 0x0a40000000200000 },
3575    Node { op: Op::Rule, flags: 0, a: 939, b: 4067, first: 0x0000000002000000 },
3576    Node { op: Op::Rule, flags: 0, a: 676, b: 3036, first: 0x0000000028000000 },
3577    Node { op: Op::Rule, flags: 0, a: 1008, b: 4348, first: 0x4000000010000000 },
3578    Node { op: Op::Choice, flags: 0, a: 2271, b: 6, first: 0x4a4808003a208008 },
3579    Node { op: Op::Keyword, flags: 0, a: 386, b: 0, first: 0x0000100000000000 },
3580    Node { op: Op::Keyword, flags: 0, a: 88, b: 0, first: 0x0000001000000000 },
3581    Node { op: Op::Rule, flags: 0, a: 555, b: 2558, first: 0x0000000020000000 },
3582    Node { op: Op::Rule, flags: 0, a: 544, b: 2506, first: 0x0000000000040000 },
3583    Node { op: Op::Choice, flags: 0, a: 2277, b: 2, first: 0x0000000020040000 },
3584    Node { op: Op::Keyword, flags: 0, a: 268, b: 0, first: 0x0000040000000000 },
3585    Node { op: Op::Keyword, flags: 0, a: 88, b: 0, first: 0x0000001000000000 },
3586    Node { op: Op::Sequence, flags: 0, a: 2279, b: 2, first: 0x0000040000000000 },
3587    Node { op: Op::Keyword, flags: 0, a: 268, b: 0, first: 0x0000040000000000 },
3588    Node { op: Op::Rule, flags: 0, a: 819, b: 3542, first: 0x0000000020040000 },
3589    Node { op: Op::Sequence, flags: 0, a: 2281, b: 2, first: 0x0000040000000000 },
3590    Node { op: Op::Keyword, flags: 0, a: 300, b: 0, first: 0x0000000000010000 },
3591    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
3592    Node { op: Op::Rule, flags: 0, a: 705, b: 3133, first: 0xffffffffffffffc5 },
3593    Node { op: Op::Sequence, flags: 0, a: 2283, b: 3, first: 0x0000000000010000 },
3594    Node { op: Op::Rule, flags: 0, a: 818, b: 3539, first: 0x0000001000000000 },
3595    Node { op: Op::Rule, flags: 0, a: 820, b: 3545, first: 0x0000040000000000 },
3596    Node { op: Op::Choice, flags: 0, a: 2286, b: 2, first: 0x0000041000000000 },
3597    Node { op: Op::Keyword, flags: 0, a: 192, b: 0, first: 0x0000000001000000 },
3598    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
3599    Node { op: Op::Optional, flags: 2, a: 3557, b: 0, first: 0x0000400000000000 },
3600    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3601    Node { op: Op::Sequence, flags: 0, a: 2288, b: 3, first: 0x0000000001000000 },
3602    Node { op: Op::Rule, flags: 0, a: 819, b: 3542, first: 0x0000000020040000 },
3603    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3604    Node { op: Op::Sequence, flags: 0, a: 2291, b: 2, first: 0x0000000020040000 },
3605    Node { op: Op::Keyword, flags: 0, a: 409, b: 0, first: 0x0000000000000200 },
3606    Node { op: Op::Keyword, flags: 0, a: 492, b: 0, first: 0x0000000400000000 },
3607    Node { op: Op::Optional, flags: 2, a: 3565, b: 0, first: 0x0000000400000000 },
3608    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3609    Node { op: Op::Sequence, flags: 0, a: 2293, b: 3, first: 0x0000000000000200 },
3610    Node { op: Op::Identifier, flags: 0, a: Suggestion::Variable as u32, b: 0, first: 0xffffffffffffffc1 },
3611    Node { op: Op::Rule, flags: 0, a: 823, b: 3555, first: 0x0000041000000000 },
3612    Node { op: Op::Rule, flags: 0, a: 824, b: 3560, first: 0x0000000001000000 },
3613    Node { op: Op::Rule, flags: 0, a: 825, b: 3563, first: 0x0000000020040000 },
3614    Node { op: Op::Rule, flags: 0, a: 821, b: 3548, first: 0x0000040000000000 },
3615    Node { op: Op::Rule, flags: 0, a: 826, b: 3568, first: 0x0000000000000200 },
3616    Node { op: Op::Rule, flags: 0, a: 822, b: 3552, first: 0x0000000000010000 },
3617    Node { op: Op::Choice, flags: 0, a: 2296, b: 6, first: 0x0000041021050200 },
3618    Node { op: Op::Keyword, flags: 0, a: 391, b: 0, first: 0x0002000000000000 },
3619    Node { op: Op::Rule, flags: 0, a: 524, b: 2406, first: 0x0000000000000080 },
3620    Node { op: Op::Rule, flags: 0, a: 903, b: 3921, first: 0x0000000000000004 },
3621    Node { op: Op::Rule, flags: 0, a: 100, b: 472, first: 0xffffffffffffffc1 },
3622    Node { op: Op::Choice, flags: 0, a: 2302, b: 3, first: 0xffffffffffffffc5 },
3623    Node { op: Op::Rule, flags: 0, a: 1045, b: 4553, first: 0x0000004000000008 },
3624    Node { op: Op::Rule, flags: 0, a: 1046, b: 4561, first: 0xffffffffffffffcf },
3625    Node { op: Op::Sequence, flags: 0, a: 2305, b: 2, first: 0x0000004000000008 },
3626    Node { op: Op::Rule, flags: 0, a: 840, b: 3624, first: 0x0000000200000000 },
3627    Node { op: Op::Rule, flags: 0, a: 889, b: 3849, first: 0xffffffffffffffc1 },
3628    Node { op: Op::Rule, flags: 0, a: 845, b: 3645, first: 0x0000001000000000 },
3629    Node { op: Op::Choice, flags: 0, a: 2307, b: 3, first: 0xffffffffffffffc1 },
3630    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
3631    Node { op: Op::Keyword, flags: 0, a: 89, b: 0, first: 0x0000002000000000 },
3632    Node { op: Op::Optional, flags: 2, a: 3590, b: 0, first: 0x0000002000000000 },
3633    Node { op: Op::Sequence, flags: 0, a: 2310, b: 2, first: 0x0004000000000000 },
3634    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
3635    Node { op: Op::Keyword, flags: 0, a: 100, b: 0, first: 0x0001000000000000 },
3636    Node { op: Op::Sequence, flags: 0, a: 2312, b: 2, first: 0x0004000000000000 },
3637    Node { op: Op::Keyword, flags: 0, a: 208, b: 0, first: 0x0000010000000000 },
3638    Node { op: Op::Rule, flags: 0, a: 260, b: 1207, first: 0x0000000000008200 },
3639    Node { op: Op::Optional, flags: 2, a: 3597, b: 0, first: 0x0000000000008200 },
3640    Node { op: Op::Sequence, flags: 0, a: 2314, b: 2, first: 0x0000010000000000 },
3641    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
3642    Node { op: Op::Keyword, flags: 0, a: 275, b: 0, first: 0x0002000000000000 },
3643    Node { op: Op::Sequence, flags: 0, a: 2316, b: 2, first: 0x0004000000000000 },
3644    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
3645    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
3646    Node { op: Op::Rule, flags: 0, a: 734, b: 3248, first: 0x0000000000000008 },
3647    Node { op: Op::Sequence, flags: 0, a: 2318, b: 2, first: 0x0004000000000000 },
3648    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
3649    Node { op: Op::Keyword, flags: 0, a: 306, b: 0, first: 0x0000000000400000 },
3650    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
3651    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3652    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3653    Node { op: Op::Sequence, flags: 0, a: 2320, b: 2, first: 0x0000000000000008 },
3654    Node { op: Op::Repeat, flags: 0, a: 3612, b: 0, first: 0x0000000000000008 },
3655    Node { op: Op::Optional, flags: 2, a: 3613, b: 0, first: 0x0000000000000008 },
3656    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3657    Node { op: Op::Optional, flags: 2, a: 3615, b: 0, first: 0x0000000000000008 },
3658    Node { op: Op::Sequence, flags: 0, a: 2322, b: 3, first: 0xffffffffffffffcf },
3659    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3660    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3661    Node { op: Op::Sequence, flags: 0, a: 2325, b: 3, first: 0x0000000000000008 },
3662    Node { op: Op::Sequence, flags: 0, a: 2328, b: 4, first: 0x0004000000000000 },
3663    Node { op: Op::Keyword, flags: 0, a: 375, b: 0, first: 0x0000000200000000 },
3664    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
3665    Node { op: Op::Sequence, flags: 0, a: 2332, b: 2, first: 0x0000000200000000 },
3666    Node { op: Op::Rule, flags: 0, a: 828, b: 3576, first: 0x0000041021050200 },
3667    Node { op: Op::Repeat, flags: 0, a: 3625, b: 0, first: 0x0000041021050200 },
3668    Node { op: Op::Rule, flags: 0, a: 854, b: 3670, first: 0x0402000000000080 },
3669    Node { op: Op::Optional, flags: 2, a: 3627, b: 0, first: 0x0402000000000080 },
3670    Node { op: Op::Rule, flags: 0, a: 853, b: 3666, first: 0xffffffffffffffc1 },
3671    Node { op: Op::Sequence, flags: 0, a: 2334, b: 2, first: 0xffffffffffffffc1 },
3672    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
3673    Node { op: Op::Keyword, flags: 0, a: 404, b: 0, first: 0x4000000000000000 },
3674    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
3675    Node { op: Op::Rule, flags: 0, a: 643, b: 2866, first: 0xffffffffffffffcf },
3676    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3677    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3678    Node { op: Op::Sequence, flags: 0, a: 2336, b: 3, first: 0x0000000000000008 },
3679    Node { op: Op::Sequence, flags: 0, a: 2339, b: 4, first: 0x0004000000000000 },
3680    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
3681    Node { op: Op::Rule, flags: 0, a: 832, b: 3588, first: 0xffffffffffffffc1 },
3682    Node { op: Op::Sequence, flags: 0, a: 2343, b: 2, first: 0x0004000000000000 },
3683    Node { op: Op::Keyword, flags: 0, a: 436, b: 0, first: 0x0000001000000000 },
3684    Node { op: Op::Keyword, flags: 0, a: 513, b: 0, first: 0x0080000000000000 },
3685    Node { op: Op::Rule, flags: 0, a: 1087, b: 4719, first: 0xffffffffffffffc7 },
3686    Node { op: Op::Sequence, flags: 0, a: 2345, b: 3, first: 0x0000001000000000 },
3687    Node { op: Op::Rule, flags: 0, a: 1047, b: 4562, first: 0x0000000000020000 },
3688    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
3689    Node { op: Op::Sequence, flags: 0, a: 2348, b: 2, first: 0x0000000000020000 },
3690    Node { op: Op::Rule, flags: 0, a: 846, b: 3648, first: 0x0000000000020000 },
3691    Node { op: Op::Rule, flags: 0, a: 842, b: 3630, first: 0xffffffffffffffc1 },
3692    Node { op: Op::Choice, flags: 0, a: 2350, b: 2, first: 0xffffffffffffffc1 },
3693    Node { op: Op::Keyword, flags: 0, a: 393, b: 0, first: 0x0008000000000000 },
3694    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
3695    Node { op: Op::Sequence, flags: 0, a: 2352, b: 2, first: 0x0008000000000000 },
3696    Node { op: Op::Rule, flags: 0, a: 851, b: 3664, first: 0x0100000004000000 },
3697    Node { op: Op::Rule, flags: 0, a: 260, b: 1207, first: 0x0000000000008200 },
3698    Node { op: Op::Optional, flags: 2, a: 3656, b: 0, first: 0x0000000000008200 },
3699    Node { op: Op::Rule, flags: 0, a: 72, b: 373, first: 0x0000400000000000 },
3700    Node { op: Op::Optional, flags: 2, a: 3658, b: 0, first: 0x0000400000000000 },
3701    Node { op: Op::Sequence, flags: 0, a: 2354, b: 3, first: 0x0100000004000000 },
3702    Node { op: Op::Keyword, flags: 0, a: 136, b: 0, first: 0x0000000004000000 },
3703    Node { op: Op::Rule, flags: 0, a: 852, b: 3665, first: 0x0100000000000000 },
3704    Node { op: Op::Rule, flags: 0, a: 850, b: 3661, first: 0x0000000004000000 },
3705    Node { op: Op::Choice, flags: 0, a: 2357, b: 2, first: 0x0100000004000000 },
3706    Node { op: Op::Keyword, flags: 0, a: 456, b: 0, first: 0x0100000000000000 },
3707    Node { op: Op::Identifier, flags: 0, a: Suggestion::SettingName as u32, b: 0, first: 0xffffffffffffffc1 },
3708    Node { op: Op::Rule, flags: 0, a: 523, b: 2405, first: 0x0000000000000080 },
3709    Node { op: Op::Rule, flags: 0, a: 829, b: 3577, first: 0x0002000000000000 },
3710    Node { op: Op::Rule, flags: 0, a: 403, b: 1856, first: 0x0400000000000000 },
3711    Node { op: Op::Choice, flags: 0, a: 2359, b: 3, first: 0x0402000000000080 },
3712    Node { op: Op::Keyword, flags: 0, a: 9, b: 0, first: 0x0000000000008000 },
3713    Node { op: Op::Rule, flags: 0, a: 861, b: 3693, first: 0x0a40000000000000 },
3714    Node { op: Op::Keyword, flags: 0, a: 9, b: 0, first: 0x0000000000008000 },
3715    Node { op: Op::Keyword, flags: 0, a: 426, b: 0, first: 0x0000000004000000 },
3716    Node { op: Op::Optional, flags: 2, a: 3674, b: 0, first: 0x0000000004000000 },
3717    Node { op: Op::Sequence, flags: 0, a: 2362, b: 3, first: 0x0a40000000000000 },
3718    Node { op: Op::Rule, flags: 0, a: 862, b: 3694, first: 0x0040000000000000 },
3719    Node { op: Op::Rule, flags: 0, a: 866, b: 3710, first: 0xffffffffffffffc5 },
3720    Node { op: Op::Optional, flags: 2, a: 3678, b: 0, first: 0xffffffffffffffc5 },
3721    Node { op: Op::Sequence, flags: 0, a: 2365, b: 2, first: 0x0040000000000000 },
3722    Node { op: Op::Rule, flags: 0, a: 711, b: 3164, first: 0xffffffffffffffc1 },
3723    Node { op: Op::Rule, flags: 0, a: 862, b: 3694, first: 0x0040000000000000 },
3724    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
3725    Node { op: Op::Sequence, flags: 0, a: 2367, b: 2, first: 0x0040000000000000 },
3726    Node { op: Op::Keyword, flags: 0, a: 396, b: 0, first: 0x0040000000000000 },
3727    Node { op: Op::Rule, flags: 0, a: 855, b: 3671, first: 0x0000000000008000 },
3728    Node { op: Op::Optional, flags: 2, a: 3686, b: 0, first: 0x0000000000008000 },
3729    Node { op: Op::Keyword, flags: 0, a: 147, b: 0, first: 0x0000002000000000 },
3730    Node { op: Op::Keyword, flags: 0, a: 359, b: 0, first: 0x0000000000000001 },
3731    Node { op: Op::Sequence, flags: 0, a: 2369, b: 4, first: 0x0040000000000000 },
3732    Node { op: Op::Rule, flags: 0, a: 862, b: 3694, first: 0x0040000000000000 },
3733    Node { op: Op::Rule, flags: 0, a: 246, b: 1152, first: 0x0a00000000000000 },
3734    Node { op: Op::Choice, flags: 0, a: 2373, b: 2, first: 0x0a40000000000000 },
3735    Node { op: Op::Keyword, flags: 0, a: 396, b: 0, first: 0x0040000000000000 },
3736    Node { op: Op::Rule, flags: 0, a: 853, b: 3666, first: 0xffffffffffffffc1 },
3737    Node { op: Op::Keyword, flags: 0, a: 91, b: 0, first: 0x0000000000000001 },
3738    Node { op: Op::Keyword, flags: 0, a: 376, b: 0, first: 0x0000000400000000 },
3739    Node { op: Op::Keyword, flags: 0, a: 426, b: 0, first: 0x0000000004000000 },
3740    Node { op: Op::Keyword, flags: 0, a: 476, b: 0, first: 0x0000000000000001 },
3741    Node { op: Op::Choice, flags: 0, a: 2375, b: 4, first: 0x0000000404000001 },
3742    Node { op: Op::Rule, flags: 0, a: 861, b: 3693, first: 0x0a40000000000000 },
3743    Node { op: Op::Keyword, flags: 0, a: 426, b: 0, first: 0x0000000004000000 },
3744    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
3745    Node { op: Op::Rule, flags: 0, a: 705, b: 3133, first: 0xffffffffffffffc5 },
3746    Node { op: Op::Sequence, flags: 0, a: 2379, b: 4, first: 0x0a40000000000000 },
3747    Node { op: Op::Rule, flags: 0, a: 858, b: 3681, first: 0xffffffffffffffc1 },
3748    Node { op: Op::Rule, flags: 0, a: 863, b: 3695, first: 0xffffffffffffffc1 },
3749    Node { op: Op::Rule, flags: 0, a: 249, b: 1163, first: 0x0000000000000004 },
3750    Node { op: Op::Rule, flags: 0, a: 864, b: 3700, first: 0x0000000404000001 },
3751    Node { op: Op::Choice, flags: 0, a: 2383, b: 4, first: 0xffffffffffffffc5 },
3752    Node { op: Op::Keyword, flags: 0, a: 397, b: 0, first: 0x0080000000000000 },
3753    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
3754    Node { op: Op::Sequence, flags: 0, a: 2387, b: 2, first: 0x0080000000000000 },
3755    Node { op: Op::Rule, flags: 0, a: 466, b: 2117, first: 0x0000004000000000 },
3756    Node { op: Op::Rule, flags: 0, a: 467, b: 2118, first: 0x0000008000000000 },
3757    Node { op: Op::Rule, flags: 0, a: 881, b: 3791, first: 0x0800000000000000 },
3758    Node { op: Op::Rule, flags: 0, a: 64, b: 327, first: 0x0000020000000000 },
3759    Node { op: Op::Rule, flags: 0, a: 722, b: 3192, first: 0x0100000000000000 },
3760    Node { op: Op::Rule, flags: 0, a: 70, b: 358, first: 0x0000100000000000 },
3761    Node { op: Op::Rule, flags: 0, a: 269, b: 1234, first: 0x0000000000002000 },
3762    Node { op: Op::Choice, flags: 0, a: 2389, b: 7, first: 0x090012c000002000 },
3763    Node { op: Op::Rule, flags: 0, a: 991, b: 4269, first: 0xffffffffffffffc1 },
3764    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
3765    Node { op: Op::Optional, flags: 2, a: 3723, b: 0, first: 0xffffffffffffffc1 },
3766    Node { op: Op::Sequence, flags: 0, a: 2396, b: 2, first: 0xffffffffffffffc1 },
3767    Node { op: Op::Rule, flags: 0, a: 808, b: 3506, first: 0x0008080000000000 },
3768    Node { op: Op::Rule, flags: 0, a: 1053, b: 4574, first: 0x0000000080000000 },
3769    Node { op: Op::Optional, flags: 2, a: 3727, b: 0, first: 0x0000000080000000 },
3770    Node { op: Op::Rule, flags: 0, a: 406, b: 1862, first: 0x2000000000000000 },
3771    Node { op: Op::Optional, flags: 2, a: 3729, b: 0, first: 0x2000000000000000 },
3772    Node { op: Op::Rule, flags: 0, a: 416, b: 1915, first: 0x0000000000000100 },
3773    Node { op: Op::Optional, flags: 2, a: 3731, b: 0, first: 0x0000000000000100 },
3774    Node { op: Op::Rule, flags: 0, a: 1054, b: 4584, first: 0x0000000200000000 },
3775    Node { op: Op::Optional, flags: 2, a: 3733, b: 0, first: 0x0000000200000000 },
3776    Node { op: Op::Rule, flags: 0, a: 713, b: 3171, first: 0x0004000000000000 },
3777    Node { op: Op::Optional, flags: 2, a: 3735, b: 0, first: 0x0004000000000000 },
3778    Node { op: Op::Rule, flags: 0, a: 780, b: 3418, first: 0x0000000008000200 },
3779    Node { op: Op::Optional, flags: 2, a: 3737, b: 0, first: 0x0000000008000200 },
3780    Node { op: Op::Sequence, flags: 0, a: 2398, b: 7, first: 0x0008080000000000 },
3781    Node { op: Op::Rule, flags: 0, a: 870, b: 3739, first: 0x0008080000000000 },
3782    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3783    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3784    Node { op: Op::Sequence, flags: 0, a: 2405, b: 3, first: 0x0000000000000008 },
3785    Node { op: Op::Rule, flags: 0, a: 103, b: 483, first: 0x0c00005000010000 },
3786    Node { op: Op::Rule, flags: 0, a: 709, b: 3154, first: 0xffffffffffffffc1 },
3787    Node { op: Op::Choice, flags: 0, a: 2408, b: 2, first: 0xffffffffffffffc1 },
3788    Node { op: Op::Symbol, flags: 0, a: 26, b: 0, first: 0x0000000000000008 },
3789    Node { op: Op::Rule, flags: 0, a: 528, b: 2423, first: 0xffffffffffffffcf },
3790    Node { op: Op::Sequence, flags: 0, a: 2410, b: 2, first: 0x0000000000000008 },
3791    Node { op: Op::Rule, flags: 0, a: 653, b: 2913, first: 0x0000000000000008 },
3792    Node { op: Op::Rule, flags: 0, a: 521, b: 2397, first: 0x0002208000000006 },
3793    Node { op: Op::Rule, flags: 0, a: 652, b: 2909, first: 0x0000000000000008 },
3794    Node { op: Op::Rule, flags: 0, a: 909, b: 3946, first: 0x0000100080000008 },
3795    Node { op: Op::Rule, flags: 0, a: 884, b: 3822, first: 0x2014104210105109 },
3796    Node { op: Op::Rule, flags: 0, a: 656, b: 2940, first: 0x0000000000000008 },
3797    Node { op: Op::Rule, flags: 0, a: 472, b: 2149, first: 0x0000020000000000 },
3798    Node { op: Op::Rule, flags: 0, a: 993, b: 4283, first: 0xffffffffffffffc1 },
3799    Node { op: Op::Rule, flags: 0, a: 84, b: 414, first: 0x0010000000000000 },
3800    Node { op: Op::Rule, flags: 0, a: 890, b: 3859, first: 0xffffffffffffffc9 },
3801    Node { op: Op::Rule, flags: 0, a: 87, b: 429, first: 0x0022000000000000 },
3802    Node { op: Op::Rule, flags: 0, a: 410, b: 1892, first: 0xc000000000000000 },
3803    Node { op: Op::Rule, flags: 0, a: 536, b: 2455, first: 0x0000000000002000 },
3804    Node { op: Op::Rule, flags: 0, a: 382, b: 1779, first: 0xffffffffffffffc1 },
3805    Node { op: Op::Rule, flags: 0, a: 137, b: 667, first: 0xffffffffffffffc5 },
3806    Node { op: Op::Rule, flags: 0, a: 517, b: 2383, first: 0x0000000000000008 },
3807    Node { op: Op::Rule, flags: 0, a: 519, b: 2389, first: 0x0000000002000008 },
3808    Node { op: Op::Rule, flags: 0, a: 904, b: 3933, first: 0x0000000000000008 },
3809    Node { op: Op::Rule, flags: 0, a: 684, b: 3064, first: 0x0000000000000008 },
3810    Node { op: Op::Rule, flags: 0, a: 230, b: 1094, first: 0x0001000000000000 },
3811    Node { op: Op::Choice, flags: 0, a: 2412, b: 20, first: 0xffffffffffffffcf },
3812    Node { op: Op::Rule, flags: 0, a: 363, b: 1701, first: 0xffffffffffffffcf },
3813    Node { op: Op::Rule, flags: 0, a: 65, b: 328, first: 0x0000040000000000 },
3814    Node { op: Op::Rule, flags: 0, a: 370, b: 1723, first: 0x0004000000000000 },
3815    Node { op: Op::Rule, flags: 0, a: 614, b: 2774, first: 0x0200000000000000 },
3816    Node { op: Op::Rule, flags: 0, a: 210, b: 1026, first: 0x0000000100000000 },
3817    Node { op: Op::Rule, flags: 0, a: 417, b: 1916, first: 0x0000000000000200 },
3818    Node { op: Op::Choice, flags: 0, a: 2432, b: 5, first: 0x0204040100000200 },
3819    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
3820    Node { op: Op::Rule, flags: 0, a: 741, b: 3273, first: 0xffffffffffffffc5 },
3821    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3822    Node { op: Op::Optional, flags: 2, a: 3780, b: 0, first: 0xffffffffffffffcf },
3823    Node { op: Op::Rule, flags: 0, a: 293, b: 1410, first: 0x0000000000000008 },
3824    Node { op: Op::Optional, flags: 2, a: 3782, b: 0, first: 0x0000000000000008 },
3825    Node { op: Op::Rule, flags: 0, a: 897, b: 3910, first: 0x0000000000000008 },
3826    Node { op: Op::Optional, flags: 2, a: 3784, b: 0, first: 0x0000000000000008 },
3827    Node { op: Op::Sequence, flags: 2, a: 2437, b: 3, first: 0xffffffffffffffcf },
3828    Node { op: Op::Symbol, flags: 0, a: 44, b: 0, first: 0x0000000000000008 },
3829    Node { op: Op::Rule, flags: 2, a: 879, b: 3786, first: 0xffffffffffffffcf },
3830    Node { op: Op::Symbol, flags: 0, a: 45, b: 0, first: 0x0000000000000008 },
3831    Node { op: Op::Sequence, flags: 0, a: 2440, b: 3, first: 0x0000000000000008 },
3832    Node { op: Op::Keyword, flags: 0, a: 401, b: 0, first: 0x0800000000000000 },
3833    Node { op: Op::Rule, flags: 0, a: 883, b: 3809, first: 0x4000000000000000 },
3834    Node { op: Op::Rule, flags: 0, a: 662, b: 2983, first: 0x0000000000400000 },
3835    Node { op: Op::Optional, flags: 2, a: 3793, b: 0, first: 0x0000000000400000 },
3836    Node { op: Op::Sequence, flags: 0, a: 2443, b: 2, first: 0x4000000000000000 },
3837    Node { op: Op::Keyword, flags: 0, a: 404, b: 0, first: 0x4000000000000000 },
3838    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
3839    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3840    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3841    Node { op: Op::Sequence, flags: 0, a: 2445, b: 2, first: 0x0000000000000008 },
3842    Node { op: Op::Repeat, flags: 0, a: 3800, b: 0, first: 0x0000000000000008 },
3843    Node { op: Op::Optional, flags: 2, a: 3801, b: 0, first: 0x0000000000000008 },
3844    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3845    Node { op: Op::Optional, flags: 2, a: 3803, b: 0, first: 0x0000000000000008 },
3846    Node { op: Op::Sequence, flags: 0, a: 2447, b: 3, first: 0xffffffffffffffcf },
3847    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3848    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3849    Node { op: Op::Sequence, flags: 0, a: 2450, b: 3, first: 0x0000000000000008 },
3850    Node { op: Op::Sequence, flags: 0, a: 2453, b: 3, first: 0x4000000000000000 },
3851    Node { op: Op::Rule, flags: 0, a: 108, b: 533, first: 0x0000000000000100 },
3852    Node { op: Op::Rule, flags: 0, a: 1003, b: 4323, first: 0x2000000000000000 },
3853    Node { op: Op::Rule, flags: 0, a: 987, b: 4244, first: 0x0000000000000001 },
3854    Node { op: Op::Rule, flags: 0, a: 138, b: 675, first: 0x0000000000001008 },
3855    Node { op: Op::Rule, flags: 0, a: 340, b: 1623, first: 0x0000004000000000 },
3856    Node { op: Op::Rule, flags: 0, a: 504, b: 2318, first: 0x0010000000000000 },
3857    Node { op: Op::Rule, flags: 0, a: 600, b: 2735, first: 0x0004000000000000 },
3858    Node { op: Op::Rule, flags: 0, a: 683, b: 3061, first: 0x0000000200000000 },
3859    Node { op: Op::Rule, flags: 0, a: 775, b: 3402, first: 0x0000000010000000 },
3860    Node { op: Op::Rule, flags: 0, a: 913, b: 3960, first: 0x0000000000100000 },
3861    Node { op: Op::Rule, flags: 0, a: 980, b: 4225, first: 0x0000100000000000 },
3862    Node { op: Op::Rule, flags: 0, a: 649, b: 2889, first: 0x0000000000004000 },
3863    Node { op: Op::Choice, flags: 0, a: 2456, b: 12, first: 0x2014104210105109 },
3864    Node { op: Op::Rule, flags: 0, a: 876, b: 3777, first: 0x0204040100000200 },
3865    Node { op: Op::Rule, flags: 0, a: 597, b: 2724, first: 0x0002000000000000 },
3866    Node { op: Op::Rule, flags: 0, a: 238, b: 1133, first: 0x0040000000000000 },
3867    Node { op: Op::Rule, flags: 0, a: 299, b: 1443, first: 0x0000000000800000 },
3868    Node { op: Op::Rule, flags: 0, a: 291, b: 1405, first: 0x0000000000040000 },
3869    Node { op: Op::Rule, flags: 0, a: 716, b: 3182, first: 0x0020000000000000 },
3870    Node { op: Op::Rule, flags: 0, a: 361, b: 1688, first: 0x0020800000000000 },
3871    Node { op: Op::Rule, flags: 0, a: 660, b: 2965, first: 0x0000000000600000 },
3872    Node { op: Op::Rule, flags: 0, a: 359, b: 1682, first: 0x0000800000000000 },
3873    Node { op: Op::Choice, flags: 0, a: 2468, b: 9, first: 0x0266840100e40200 },
3874    Node { op: Op::Rule, flags: 0, a: 885, b: 3832, first: 0x0266840100e40200 },
3875    Node { op: Op::Rule, flags: 0, a: 887, b: 3841, first: 0x0266840100e40208 },
3876    Node { op: Op::Repeat, flags: 0, a: 3834, b: 0, first: 0x0266840100e40208 },
3877    Node { op: Op::Optional, flags: 2, a: 3835, b: 0, first: 0x0266840100e40208 },
3878    Node { op: Op::Sequence, flags: 0, a: 2477, b: 2, first: 0x0266840100e40200 },
3879    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3880    Node { op: Op::Optional, flags: 2, a: 3838, b: 0, first: 0x0000000000000008 },
3881    Node { op: Op::Rule, flags: 0, a: 885, b: 3832, first: 0x0266840100e40200 },
3882    Node { op: Op::Sequence, flags: 0, a: 2479, b: 2, first: 0x0266840100e40208 },
3883    Node { op: Op::Symbol, flags: 0, a: 44, b: 0, first: 0x0000000000000008 },
3884    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3885    Node { op: Op::Optional, flags: 2, a: 3843, b: 0, first: 0xffffffffffffffcf },
3886    Node { op: Op::Symbol, flags: 0, a: 45, b: 0, first: 0x0000000000000008 },
3887    Node { op: Op::Sequence, flags: 0, a: 2481, b: 3, first: 0x0000000000000008 },
3888    Node { op: Op::Rule, flags: 0, a: 847, b: 3651, first: 0xffffffffffffffc1 },
3889    Node { op: Op::Rule, flags: 0, a: 831, b: 3584, first: 0x0000004000000008 },
3890    Node { op: Op::Sequence, flags: 0, a: 2484, b: 2, first: 0xffffffffffffffc1 },
3891    Node { op: Op::Rule, flags: 0, a: 892, b: 3862, first: 0xffffffffffffffc1 },
3892    Node { op: Op::Optional, flags: 2, a: 3850, b: 0, first: 0xffffffffffffffc1 },
3893    Node { op: Op::Symbol, flags: 0, a: 30, b: 0, first: 0x0000000000000008 },
3894    Node { op: Op::Rule, flags: 0, a: 305, b: 1455, first: 0x000000000c000000 },
3895    Node { op: Op::Optional, flags: 2, a: 3853, b: 0, first: 0x000000000c000000 },
3896    Node { op: Op::Rule, flags: 0, a: 749, b: 3315, first: 0x0000000000001000 },
3897    Node { op: Op::Optional, flags: 2, a: 3855, b: 0, first: 0x0000000000001000 },
3898    Node { op: Op::Rule, flags: 0, a: 743, b: 3287, first: 0x0000000000000400 },
3899    Node { op: Op::Optional, flags: 2, a: 3857, b: 0, first: 0x0000000000000400 },
3900    Node { op: Op::Sequence, flags: 0, a: 2486, b: 5, first: 0xffffffffffffffc9 },
3901    Node { op: Op::Rule, flags: 0, a: 893, b: 3863, first: 0x0000000000000008 },
3902    Node { op: Op::Rule, flags: 0, a: 114, b: 556, first: 0xffffffffffffffc1 },
3903    Node { op: Op::Repeat, flags: 0, a: 3861, b: 0, first: 0xffffffffffffffc1 },
3904    Node { op: Op::Symbol, flags: 0, a: 30, b: 0, first: 0x0000000000000008 },
3905    Node { op: Op::Rule, flags: 0, a: 893, b: 3863, first: 0x0000000000000008 },
3906    Node { op: Op::Rule, flags: 0, a: 134, b: 659, first: 0xffffffffffffffc1 },
3907    Node { op: Op::Choice, flags: 0, a: 2491, b: 2, first: 0xffffffffffffffc9 },
3908    Node { op: Op::Keyword, flags: 0, a: 409, b: 0, first: 0x0000000000000200 },
3909    Node { op: Op::Keyword, flags: 0, a: 33, b: 0, first: 0x0000008000000000 },
3910    Node { op: Op::Choice, flags: 0, a: 2493, b: 2, first: 0x0000008000000200 },
3911    Node { op: Op::Rule, flags: 0, a: 335, b: 1594, first: 0x0040000040000001 },
3912    Node { op: Op::Rule, flags: 0, a: 333, b: 1588, first: 0x0000000040004000 },
3913    Node { op: Op::Rule, flags: 0, a: 195, b: 938, first: 0x0000000040000000 },
3914    Node { op: Op::Rule, flags: 0, a: 814, b: 3524, first: 0x4a4808043a208008 },
3915    Node { op: Op::Rule, flags: 0, a: 844, b: 3641, first: 0x0004000000000000 },
3916    Node { op: Op::Rule, flags: 0, a: 693, b: 3093, first: 0x0000000800000000 },
3917    Node { op: Op::Rule, flags: 0, a: 80, b: 400, first: 0x0001000000000000 },
3918    Node { op: Op::Rule, flags: 0, a: 460, b: 2080, first: 0x0000000c00000000 },
3919    Node { op: Op::Rule, flags: 0, a: 285, b: 1356, first: 0x0000000000004000 },
3920    Node { op: Op::Rule, flags: 0, a: 181, b: 820, first: 0x0000000010000000 },
3921    Node { op: Op::Rule, flags: 0, a: 319, b: 1516, first: 0x0000000100000000 },
3922    Node { op: Op::Rule, flags: 0, a: 1027, b: 4442, first: 0x0000000400000040 },
3923    Node { op: Op::Rule, flags: 0, a: 698, b: 3114, first: 0x0000008000000000 },
3924    Node { op: Op::Rule, flags: 0, a: 314, b: 1488, first: 0x0000000040000000 },
3925    Node { op: Op::Rule, flags: 0, a: 17, b: 84, first: 0x0000000000020000 },
3926    Node { op: Op::Rule, flags: 0, a: 964, b: 4166, first: 0x0000008004108240 },
3927    Node { op: Op::Rule, flags: 0, a: 236, b: 1118, first: 0x0020000400000000 },
3928    Node { op: Op::Rule, flags: 0, a: 50, b: 264, first: 0x0000000400000000 },
3929    Node { op: Op::Rule, flags: 0, a: 1029, b: 4448, first: 0x0000000000000080 },
3930    Node { op: Op::Rule, flags: 0, a: 252, b: 1178, first: 0x2000000000000000 },
3931    Node { op: Op::Rule, flags: 0, a: 107, b: 520, first: 0x4000800000000000 },
3932    Node { op: Op::Rule, flags: 0, a: 1040, b: 4520, first: 0x0000000000000400 },
3933    Node { op: Op::Rule, flags: 0, a: 766, b: 3366, first: 0x0000000000008000 },
3934    Node { op: Op::Rule, flags: 0, a: 326, b: 1561, first: 0x0000000200000000 },
3935    Node { op: Op::Rule, flags: 0, a: 432, b: 1970, first: 0x0000000000100000 },
3936    Node { op: Op::Rule, flags: 0, a: 148, b: 704, first: 0x0000000000002000 },
3937    Node { op: Op::Rule, flags: 0, a: 221, b: 1067, first: 0x0000040000000000 },
3938    Node { op: Op::Rule, flags: 0, a: 985, b: 4237, first: 0x0000400000000000 },
3939    Node { op: Op::Rule, flags: 0, a: 522, b: 2404, first: 0x0000000000000040 },
3940    Node { op: Op::Rule, flags: 0, a: 465, b: 2116, first: 0x0000801000000000 },
3941    Node { op: Op::Rule, flags: 0, a: 1016, b: 4382, first: 0x0000000000000040 },
3942    Node { op: Op::Rule, flags: 0, a: 24, b: 140, first: 0x0000000000180000 },
3943    Node { op: Op::Rule, flags: 0, a: 545, b: 2518, first: 0x0000000400080000 },
3944    Node { op: Op::Rule, flags: 0, a: 159, b: 743, first: 0x0000000000200000 },
3945    Node { op: Op::Rule, flags: 0, a: 253, b: 1179, first: 0x0000000000000080 },
3946    Node { op: Op::Rule, flags: 0, a: 331, b: 1582, first: 0xffffffffffffffcf },
3947    Node { op: Op::Choice, flags: 0, a: 2495, b: 36, first: 0xffffffffffffffcf },
3948    Node { op: Op::Symbol, flags: 0, a: 48, b: 0, first: 0x0000000000000008 },
3949    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3950    Node { op: Op::Optional, flags: 2, a: 3908, b: 0, first: 0xffffffffffffffcf },
3951    Node { op: Op::Sequence, flags: 0, a: 2531, b: 2, first: 0x0000000000000008 },
3952    Node { op: Op::Keyword, flags: 0, a: 415, b: 0, first: 0x0000000000008000 },
3953    Node { op: Op::String, flags: 0, a: 0, b: 0, first: 0x0000000000000004 },
3954    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
3955    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
3956    Node { op: Op::Symbol, flags: 0, a: 12, b: 0, first: 0x0000000000000008 },
3957    Node { op: Op::Symbol, flags: 0, a: 13, b: 0, first: 0x0000000000000008 },
3958    Node { op: Op::Choice, flags: 0, a: 2533, b: 2, first: 0x0000000000000008 },
3959    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
3960    Node { op: Op::Rule, flags: 0, a: 397, b: 1837, first: 0x0000000000000008 },
3961    Node { op: Op::Optional, flags: 2, a: 3919, b: 0, first: 0x0000000000000008 },
3962    Node { op: Op::Sequence, flags: 0, a: 2535, b: 2, first: 0x0000000000000004 },
3963    Node { op: Op::Symbol, flags: 0, a: 50, b: 0, first: 0x0000000000000008 },
3964    Node { op: Op::Rule, flags: 0, a: 905, b: 3937, first: 0xffffffffffffffc5 },
3965    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3966    Node { op: Op::Sequence, flags: 0, a: 2537, b: 2, first: 0x0000000000000008 },
3967    Node { op: Op::Repeat, flags: 0, a: 3925, b: 0, first: 0x0000000000000008 },
3968    Node { op: Op::Optional, flags: 2, a: 3926, b: 0, first: 0x0000000000000008 },
3969    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
3970    Node { op: Op::Optional, flags: 2, a: 3928, b: 0, first: 0x0000000000000008 },
3971    Node { op: Op::Sequence, flags: 0, a: 2539, b: 3, first: 0xffffffffffffffc5 },
3972    Node { op: Op::Optional, flags: 2, a: 3930, b: 0, first: 0xffffffffffffffc5 },
3973    Node { op: Op::Symbol, flags: 0, a: 51, b: 0, first: 0x0000000000000008 },
3974    Node { op: Op::Sequence, flags: 0, a: 2542, b: 3, first: 0x0000000000000008 },
3975    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
3976    Node { op: Op::Symbol, flags: 0, a: 48, b: 0, first: 0x0000000000000008 },
3977    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
3978    Node { op: Op::Sequence, flags: 0, a: 2545, b: 3, first: 0xffffffffffffffc5 },
3979    Node { op: Op::Keyword, flags: 0, a: 9, b: 0, first: 0x0000000000008000 },
3980    Node { op: Op::Keyword, flags: 0, a: 17, b: 0, first: 0x0000000000800000 },
3981    Node { op: Op::Keyword, flags: 0, a: 141, b: 0, first: 0x0000000080000000 },
3982    Node { op: Op::Rule, flags: 0, a: 910, b: 3947, first: 0x0000100000000000 },
3983    Node { op: Op::Optional, flags: 2, a: 3941, b: 0, first: 0x0000100000000000 },
3984    Node { op: Op::Rule, flags: 0, a: 908, b: 3940, first: 0x0000000080000000 },
3985    Node { op: Op::Optional, flags: 2, a: 3943, b: 0, first: 0x0000000080000000 },
3986    Node { op: Op::Rule, flags: 0, a: 911, b: 3951, first: 0x0000000000000008 },
3987    Node { op: Op::Sequence, flags: 0, a: 2548, b: 3, first: 0x0000100080000008 },
3988    Node { op: Op::Keyword, flags: 0, a: 270, b: 0, first: 0x0000100000000000 },
3989    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
3990    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3991    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
3992    Node { op: Op::Sequence, flags: 0, a: 2551, b: 3, first: 0x0000000000000008 },
3993    Node { op: Op::Rule, flags: 0, a: 918, b: 3979, first: 0xffffffffffffffcf },
3994    Node { op: Op::Rule, flags: 0, a: 914, b: 3968, first: 0xffffffffffffffcf },
3995    Node { op: Op::Choice, flags: 0, a: 2554, b: 2, first: 0xffffffffffffffcf },
3996    Node { op: Op::Keyword, flags: 0, a: 420, b: 0, first: 0x0000000000100000 },
3997    Node { op: Op::Rule, flags: 0, a: 912, b: 3954, first: 0xffffffffffffffcf },
3998    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
3999    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4000    Node { op: Op::Sequence, flags: 0, a: 2556, b: 3, first: 0x0000000000000008 },
4001    Node { op: Op::Sequence, flags: 0, a: 2559, b: 2, first: 0x0000000000100000 },
4002    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4003    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4004    Node { op: Op::Sequence, flags: 0, a: 2561, b: 2, first: 0x0000000000000008 },
4005    Node { op: Op::Repeat, flags: 0, a: 3963, b: 0, first: 0x0000000000000008 },
4006    Node { op: Op::Optional, flags: 2, a: 3964, b: 0, first: 0x0000000000000008 },
4007    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4008    Node { op: Op::Optional, flags: 2, a: 3966, b: 0, first: 0x0000000000000008 },
4009    Node { op: Op::Sequence, flags: 0, a: 2563, b: 3, first: 0xffffffffffffffcf },
4010    Node { op: Op::Rule, flags: 0, a: 357, b: 1675, first: 0x0000400000000000 },
4011    Node { op: Op::Rule, flags: 0, a: 917, b: 3976, first: 0x0008000000000000 },
4012    Node { op: Op::Rule, flags: 0, a: 915, b: 3969, first: 0x0000400000000000 },
4013    Node { op: Op::Choice, flags: 0, a: 2566, b: 2, first: 0x0008400000000000 },
4014    Node { op: Op::Rule, flags: 0, a: 372, b: 1736, first: 0x0008000000000000 },
4015    Node { op: Op::Rule, flags: 0, a: 357, b: 1675, first: 0x0000400000000000 },
4016    Node { op: Op::Optional, flags: 2, a: 3974, b: 0, first: 0x0000400000000000 },
4017    Node { op: Op::Sequence, flags: 0, a: 2568, b: 2, first: 0x0008000000000000 },
4018    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4019    Node { op: Op::Rule, flags: 0, a: 916, b: 3972, first: 0x0008400000000000 },
4020    Node { op: Op::Sequence, flags: 0, a: 2570, b: 2, first: 0xffffffffffffffcf },
4021    Node { op: Op::Rule, flags: 0, a: 920, b: 3981, first: 0x0000000000200000 },
4022    Node { op: Op::Keyword, flags: 0, a: 421, b: 0, first: 0x0000000000200000 },
4023    Node { op: Op::Rule, flags: 0, a: 922, b: 3989, first: 0x0000000004000000 },
4024    Node { op: Op::Rule, flags: 0, a: 924, b: 3996, first: 0xffffffffffffffc1 },
4025    Node { op: Op::Choice, flags: 0, a: 2572, b: 2, first: 0xffffffffffffffc1 },
4026    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
4027    Node { op: Op::Rule, flags: 0, a: 426, b: 1952, first: 0xffffffffffffffc5 },
4028    Node { op: Op::Rule, flags: 0, a: 127, b: 612, first: 0x0000000000000008 },
4029    Node { op: Op::Optional, flags: 2, a: 3987, b: 0, first: 0x0000000000000008 },
4030    Node { op: Op::Sequence, flags: 0, a: 2574, b: 3, first: 0x0000000004000000 },
4031    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
4032    Node { op: Op::Symbol, flags: 0, a: 48, b: 0, first: 0x0000000000000008 },
4033    Node { op: Op::Sequence, flags: 0, a: 2577, b: 2, first: 0xffffffffffffffc5 },
4034    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
4035    Node { op: Op::Rule, flags: 0, a: 127, b: 612, first: 0x0000000000000008 },
4036    Node { op: Op::Optional, flags: 2, a: 3994, b: 0, first: 0x0000000000000008 },
4037    Node { op: Op::Sequence, flags: 0, a: 2579, b: 2, first: 0xffffffffffffffc1 },
4038    Node { op: Op::Rule, flags: 0, a: 928, b: 4028, first: 0xffffffffffffffc1 },
4039    Node { op: Op::Rule, flags: 0, a: 926, b: 4007, first: 0xffffffffffffffc5 },
4040    Node { op: Op::Choice, flags: 0, a: 2581, b: 2, first: 0xffffffffffffffc5 },
4041    Node { op: Op::Rule, flags: 0, a: 923, b: 3992, first: 0xffffffffffffffc5 },
4042    Node { op: Op::Rule, flags: 0, a: 710, b: 3161, first: 0xffffffffffffffc1 },
4043    Node { op: Op::Rule, flags: 0, a: 927, b: 4019, first: 0x0000000000000008 },
4044    Node { op: Op::Rule, flags: 0, a: 1073, b: 4668, first: 0x0000000400000000 },
4045    Node { op: Op::Optional, flags: 2, a: 4003, b: 0, first: 0x0000000400000000 },
4046    Node { op: Op::Rule, flags: 0, a: 780, b: 3418, first: 0x0000000008000200 },
4047    Node { op: Op::Optional, flags: 2, a: 4005, b: 0, first: 0x0000000008000200 },
4048    Node { op: Op::Sequence, flags: 0, a: 2583, b: 5, first: 0xffffffffffffffc5 },
4049    Node { op: Op::Rule, flags: 0, a: 380, b: 1760, first: 0xffffffffffffffcf },
4050    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4051    Node { op: Op::Sequence, flags: 0, a: 2588, b: 2, first: 0x0000000000000008 },
4052    Node { op: Op::Repeat, flags: 0, a: 4010, b: 0, first: 0x0000000000000008 },
4053    Node { op: Op::Optional, flags: 2, a: 4011, b: 0, first: 0x0000000000000008 },
4054    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4055    Node { op: Op::Optional, flags: 2, a: 4013, b: 0, first: 0x0000000000000008 },
4056    Node { op: Op::Sequence, flags: 0, a: 2590, b: 3, first: 0xffffffffffffffcf },
4057    Node { op: Op::Optional, flags: 2, a: 4015, b: 0, first: 0xffffffffffffffcf },
4058    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4059    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4060    Node { op: Op::Sequence, flags: 0, a: 2593, b: 3, first: 0x0000000000000008 },
4061    Node { op: Op::Rule, flags: 0, a: 505, b: 2319, first: 0x0100000000000000 },
4062    Node { op: Op::Optional, flags: 2, a: 4020, b: 0, first: 0x0100000000000000 },
4063    Node { op: Op::Rule, flags: 0, a: 710, b: 3161, first: 0xffffffffffffffc1 },
4064    Node { op: Op::Rule, flags: 0, a: 927, b: 4019, first: 0x0000000000000008 },
4065    Node { op: Op::Rule, flags: 0, a: 1073, b: 4668, first: 0x0000000400000000 },
4066    Node { op: Op::Optional, flags: 2, a: 4024, b: 0, first: 0x0000000400000000 },
4067    Node { op: Op::Rule, flags: 0, a: 921, b: 3984, first: 0xffffffffffffffc1 },
4068    Node { op: Op::Optional, flags: 2, a: 4026, b: 0, first: 0xffffffffffffffc1 },
4069    Node { op: Op::Sequence, flags: 0, a: 2596, b: 5, first: 0xffffffffffffffc1 },
4070    Node { op: Op::Identifier, flags: 0, a: Suggestion::TableFunctionName as u32, b: 0, first: 0xffffffffffffffc1 },
4071    Node { op: Op::Keyword, flags: 0, a: 425, b: 0, first: 0x0000000002000000 },
4072    Node { op: Op::Rule, flags: 0, a: 815, b: 3530, first: 0x4a4808043a208008 },
4073    Node { op: Op::Sequence, flags: 0, a: 2601, b: 2, first: 0x0000000002000000 },
4074    Node { op: Op::Identifier, flags: 0, a: Suggestion::TableName as u32, b: 0, first: 0xffffffffffffffc5 },
4075    Node { op: Op::Rule, flags: 0, a: 149, b: 705, first: 0x0000000002000000 },
4076    Node { op: Op::Rule, flags: 0, a: 152, b: 710, first: 0x0000000001000000 },
4077    Node { op: Op::Rule, flags: 0, a: 543, b: 2505, first: 0x0000000000020000 },
4078    Node { op: Op::Choice, flags: 0, a: 2603, b: 3, first: 0x0000000003020000 },
4079    Node { op: Op::Keyword, flags: 0, a: 311, b: 0, first: 0x0000000008000000 },
4080    Node { op: Op::Rule, flags: 0, a: 934, b: 4052, first: 0xffffffffffffffcf },
4081    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4082    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4083    Node { op: Op::Sequence, flags: 0, a: 2606, b: 3, first: 0x0000000000000008 },
4084    Node { op: Op::Rule, flags: 0, a: 921, b: 3984, first: 0xffffffffffffffc1 },
4085    Node { op: Op::Optional, flags: 2, a: 4043, b: 0, first: 0xffffffffffffffc1 },
4086    Node { op: Op::Sequence, flags: 0, a: 2609, b: 3, first: 0x0000000008000000 },
4087    Node { op: Op::Rule, flags: 0, a: 943, b: 4098, first: 0xffffffffffffffcf },
4088    Node { op: Op::Keyword, flags: 0, a: 156, b: 0, first: 0x0000400000000000 },
4089    Node { op: Op::Rule, flags: 0, a: 679, b: 3047, first: 0xffffffffffffffcf },
4090    Node { op: Op::Repeat, flags: 0, a: 4048, b: 0, first: 0xffffffffffffffcf },
4091    Node { op: Op::Rule, flags: 0, a: 671, b: 3019, first: 0x2000000000000000 },
4092    Node { op: Op::Optional, flags: 2, a: 4050, b: 0, first: 0x2000000000000000 },
4093    Node { op: Op::Sequence, flags: 0, a: 2612, b: 4, first: 0xffffffffffffffcf },
4094    Node { op: Op::Rule, flags: 0, a: 931, b: 4033, first: 0xffffffffffffffc5 },
4095    Node { op: Op::Symbol, flags: 0, a: 47, b: 0, first: 0x000000000000000a },
4096    Node { op: Op::Sequence, flags: 0, a: 2616, b: 2, first: 0xffffffffffffffc5 },
4097    Node { op: Op::Rule, flags: 0, a: 447, b: 2026, first: 0xffffffffffffffcd },
4098    Node { op: Op::Rule, flags: 0, a: 495, b: 2271, first: 0x48109024a9400000 },
4099    Node { op: Op::Repeat, flags: 0, a: 4057, b: 0, first: 0x48109024a9400000 },
4100    Node { op: Op::Optional, flags: 2, a: 4058, b: 0, first: 0x48109024a9400000 },
4101    Node { op: Op::Sequence, flags: 0, a: 2618, b: 2, first: 0xffffffffffffffcd },
4102    Node { op: Op::Rule, flags: 0, a: 935, b: 4055, first: 0xffffffffffffffc5 },
4103    Node { op: Op::Rule, flags: 0, a: 752, b: 3336, first: 0xffffffffffffffc1 },
4104    Node { op: Op::Sequence, flags: 0, a: 2620, b: 2, first: 0xffffffffffffffc5 },
4105    Node { op: Op::Keyword, flags: 0, a: 427, b: 0, first: 0x0000000008000000 },
4106    Node { op: Op::Keyword, flags: 0, a: 425, b: 0, first: 0x0000000002000000 },
4107    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
4108    Node { op: Op::Sequence, flags: 0, a: 2622, b: 2, first: 0x0000000002000000 },
4109    Node { op: Op::Rule, flags: 0, a: 923, b: 3992, first: 0xffffffffffffffc5 },
4110    Node { op: Op::Optional, flags: 2, a: 4068, b: 0, first: 0xffffffffffffffc5 },
4111    Node { op: Op::Rule, flags: 0, a: 505, b: 2319, first: 0x0100000000000000 },
4112    Node { op: Op::Optional, flags: 2, a: 4070, b: 0, first: 0x0100000000000000 },
4113    Node { op: Op::Rule, flags: 0, a: 911, b: 3951, first: 0x0000000000000008 },
4114    Node { op: Op::Rule, flags: 0, a: 921, b: 3984, first: 0xffffffffffffffc1 },
4115    Node { op: Op::Optional, flags: 2, a: 4073, b: 0, first: 0xffffffffffffffc1 },
4116    Node { op: Op::Sequence, flags: 0, a: 2624, b: 4, first: 0xffffffffffffffcd },
4117    Node { op: Op::Keyword, flags: 0, a: 462, b: 0, first: 0x4000000000000000 },
4118    Node { op: Op::Rule, flags: 0, a: 439, b: 1999, first: 0x0000000008400000 },
4119    Node { op: Op::Optional, flags: 2, a: 4077, b: 0, first: 0x0000000008400000 },
4120    Node { op: Op::Rule, flags: 0, a: 942, b: 4090, first: 0xffffffffffffffcd },
4121    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4122    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4123    Node { op: Op::Sequence, flags: 0, a: 2628, b: 3, first: 0x0000000000000008 },
4124    Node { op: Op::Rule, flags: 0, a: 921, b: 3984, first: 0xffffffffffffffc1 },
4125    Node { op: Op::Optional, flags: 2, a: 4083, b: 0, first: 0xffffffffffffffc1 },
4126    Node { op: Op::Sequence, flags: 0, a: 2631, b: 4, first: 0x4000000000000000 },
4127    Node { op: Op::Rule, flags: 0, a: 1004, b: 4326, first: 0xffffffffffffffcd },
4128    Node { op: Op::Keyword, flags: 0, a: 156, b: 0, first: 0x0000400000000000 },
4129    Node { op: Op::Rule, flags: 0, a: 1010, b: 4356, first: 0xffffffffffffffcd },
4130    Node { op: Op::Repeat, flags: 0, a: 4088, b: 0, first: 0xffffffffffffffcd },
4131    Node { op: Op::Sequence, flags: 0, a: 2635, b: 3, first: 0xffffffffffffffcd },
4132    Node { op: Op::Rule, flags: 0, a: 8, b: 40, first: 0xffffffffffffffcf },
4133    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4134    Node { op: Op::Sequence, flags: 0, a: 2638, b: 2, first: 0x0000000000000008 },
4135    Node { op: Op::Repeat, flags: 0, a: 4093, b: 0, first: 0x0000000000000008 },
4136    Node { op: Op::Optional, flags: 2, a: 4094, b: 0, first: 0x0000000000000008 },
4137    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4138    Node { op: Op::Optional, flags: 2, a: 4096, b: 0, first: 0x0000000000000008 },
4139    Node { op: Op::Sequence, flags: 0, a: 2640, b: 3, first: 0xffffffffffffffcf },
4140    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
4141    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
4142    Node { op: Op::Optional, flags: 2, a: 4100, b: 0, first: 0x0000000004000000 },
4143    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
4144    Node { op: Op::Optional, flags: 2, a: 4102, b: 0, first: 0xffffffffffffffc1 },
4145    Node { op: Op::Sequence, flags: 0, a: 2643, b: 3, first: 0xffffffffffffffc5 },
4146    Node { op: Op::Keyword, flags: 0, a: 430, b: 0, first: 0x0000000040000000 },
4147    Node { op: Op::Rule, flags: 0, a: 665, b: 2994, first: 0x0000000004000000 },
4148    Node { op: Op::Rule, flags: 0, a: 945, b: 4105, first: 0x0000000040000000 },
4149    Node { op: Op::Rule, flags: 0, a: 947, b: 4110, first: 0x0000000100000000 },
4150    Node { op: Op::Choice, flags: 0, a: 2646, b: 3, first: 0x0000000144000000 },
4151    Node { op: Op::Keyword, flags: 0, a: 432, b: 0, first: 0x0000000100000000 },
4152    Node { op: Op::Symbol, flags: 0, a: 28, b: 0, first: 0x0000000000000008 },
4153    Node { op: Op::Symbol, flags: 0, a: 29, b: 0, first: 0x0000000000000008 },
4154    Node { op: Op::Choice, flags: 0, a: 2649, b: 2, first: 0x0000000000000008 },
4155    Node { op: Op::Symbol, flags: 0, a: 39, b: 0, first: 0x0000000000000008 },
4156    Node { op: Op::Rule, flags: 0, a: 952, b: 4124, first: 0x0000001000000000 },
4157    Node { op: Op::Rule, flags: 0, a: 955, b: 4130, first: 0x0000002000000000 },
4158    Node { op: Op::Choice, flags: 0, a: 2651, b: 2, first: 0x0000003000000000 },
4159    Node { op: Op::Rule, flags: 0, a: 950, b: 4117, first: 0x0000003000000000 },
4160    Node { op: Op::Rule, flags: 0, a: 994, b: 4295, first: 0x0000000000000008 },
4161    Node { op: Op::Optional, flags: 2, a: 4119, b: 0, first: 0x0000000000000008 },
4162    Node { op: Op::Rule, flags: 0, a: 953, b: 4128, first: 0x0000001400000000 },
4163    Node { op: Op::Optional, flags: 2, a: 4121, b: 0, first: 0x0000001400000000 },
4164    Node { op: Op::Sequence, flags: 0, a: 2653, b: 3, first: 0x0000003000000000 },
4165    Node { op: Op::Keyword, flags: 0, a: 436, b: 0, first: 0x0000001000000000 },
4166    Node { op: Op::Rule, flags: 0, a: 1071, b: 4662, first: 0x0000001400000000 },
4167    Node { op: Op::Keyword, flags: 0, a: 436, b: 0, first: 0x0000001000000000 },
4168    Node { op: Op::Keyword, flags: 0, a: 513, b: 0, first: 0x0080000000000000 },
4169    Node { op: Op::Sequence, flags: 0, a: 2656, b: 3, first: 0x0000001400000000 },
4170    Node { op: Op::Keyword, flags: 0, a: 437, b: 0, first: 0x0000002000000000 },
4171    Node { op: Op::Keyword, flags: 0, a: 437, b: 0, first: 0x0000002000000000 },
4172    Node { op: Op::Rule, flags: 0, a: 105, b: 513, first: 0x2000000000000000 },
4173    Node { op: Op::Keyword, flags: 0, a: 158, b: 0, first: 0x0001000000000000 },
4174    Node { op: Op::Keyword, flags: 0, a: 217, b: 0, first: 0x0002000000000000 },
4175    Node { op: Op::Rule, flags: 0, a: 133, b: 651, first: 0x0000000000000008 },
4176    Node { op: Op::Rule, flags: 0, a: 362, b: 1697, first: 0x2000000000000000 },
4177    Node { op: Op::Sequence, flags: 0, a: 2659, b: 4, first: 0x0001000000000000 },
4178    Node { op: Op::Rule, flags: 0, a: 162, b: 751, first: 0x0000000000800000 },
4179    Node { op: Op::Optional, flags: 2, a: 4137, b: 0, first: 0x0000000000800000 },
4180    Node { op: Op::Rule, flags: 0, a: 959, b: 4145, first: 0x2201040000000000 },
4181    Node { op: Op::Sequence, flags: 0, a: 2663, b: 2, first: 0x2201040000800000 },
4182    Node { op: Op::Rule, flags: 0, a: 961, b: 4156, first: 0x0000040000000000 },
4183    Node { op: Op::Rule, flags: 0, a: 956, b: 4131, first: 0x2000000000000000 },
4184    Node { op: Op::Rule, flags: 0, a: 962, b: 4159, first: 0x0200000000000000 },
4185    Node { op: Op::Rule, flags: 0, a: 957, b: 4136, first: 0x0001000000000000 },
4186    Node { op: Op::Choice, flags: 0, a: 2665, b: 4, first: 0x2201040000000000 },
4187    Node { op: Op::Rule, flags: 0, a: 896, b: 3906, first: 0xffffffffffffffcf },
4188    Node { op: Op::Optional, flags: 2, a: 4146, b: 0, first: 0xffffffffffffffcf },
4189    Node { op: Op::Symbol, flags: 0, a: 54, b: 0, first: 0x0000000000000010 },
4190    Node { op: Op::Repeat, flags: 0, a: 4148, b: 0, first: 0x0000000000000010 },
4191    Node { op: Op::Rule, flags: 0, a: 292, b: 1406, first: 0x0000000000000020 },
4192    Node { op: Op::Choice, flags: 0, a: 2669, b: 2, first: 0x0000000000000030 },
4193    Node { op: Op::Sequence, flags: 0, a: 2671, b: 2, first: 0xffffffffffffffff },
4194    Node { op: Op::Keyword, flags: 0, a: 326, b: 0, first: 0x0000040000000000 },
4195    Node { op: Op::Keyword, flags: 0, a: 217, b: 0, first: 0x0002000000000000 },
4196    Node { op: Op::Rule, flags: 0, a: 133, b: 651, first: 0x0000000000000008 },
4197    Node { op: Op::Sequence, flags: 0, a: 2673, b: 3, first: 0x0000040000000000 },
4198    Node { op: Op::Keyword, flags: 0, a: 457, b: 0, first: 0x0200000000000000 },
4199    Node { op: Op::Rule, flags: 0, a: 133, b: 651, first: 0x0000000000000008 },
4200    Node { op: Op::Sequence, flags: 0, a: 2676, b: 2, first: 0x0200000000000000 },
4201    Node { op: Op::Keyword, flags: 0, a: 495, b: 0, first: 0x0000002000000000 },
4202    Node { op: Op::Keyword, flags: 0, a: 440, b: 0, first: 0x0000010000000000 },
4203    Node { op: Op::Choice, flags: 0, a: 2678, b: 2, first: 0x0000012000000000 },
4204    Node { op: Op::Rule, flags: 0, a: 58, b: 304, first: 0x0000008000000200 },
4205    Node { op: Op::Rule, flags: 0, a: 773, b: 3387, first: 0x0000000004000040 },
4206    Node { op: Op::Rule, flags: 0, a: 155, b: 722, first: 0x0000000000108000 },
4207    Node { op: Op::Choice, flags: 0, a: 2680, b: 3, first: 0x0000008004108240 },
4208    Node { op: Op::Keyword, flags: 0, a: 6, b: 0, first: 0x0000000000001000 },
4209    Node { op: Op::Keyword, flags: 0, a: 32, b: 0, first: 0x0000004000000000 },
4210    Node { op: Op::Rule, flags: 0, a: 460, b: 2080, first: 0x0000000c00000000 },
4211    Node { op: Op::Rule, flags: 0, a: 1027, b: 4442, first: 0x0000000400000040 },
4212    Node { op: Op::Rule, flags: 0, a: 236, b: 1118, first: 0x0020000400000000 },
4213    Node { op: Op::Rule, flags: 0, a: 545, b: 2518, first: 0x0000000400080000 },
4214    Node { op: Op::Choice, flags: 0, a: 2683, b: 4, first: 0x0020000c00080040 },
4215    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
4216    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4217    Node { op: Op::Sequence, flags: 0, a: 2687, b: 2, first: 0x0000000000000008 },
4218    Node { op: Op::Repeat, flags: 0, a: 4176, b: 0, first: 0x0000000000000008 },
4219    Node { op: Op::Optional, flags: 2, a: 4177, b: 0, first: 0x0000000000000008 },
4220    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4221    Node { op: Op::Optional, flags: 2, a: 4179, b: 0, first: 0x0000000000000008 },
4222    Node { op: Op::Sequence, flags: 0, a: 2689, b: 3, first: 0xffffffffffffffc1 },
4223    Node { op: Op::Rule, flags: 0, a: 973, b: 4193, first: 0x0000000000000040 },
4224    Node { op: Op::Rule, flags: 0, a: 971, b: 4188, first: 0x0000000800000000 },
4225    Node { op: Op::Rule, flags: 0, a: 970, b: 4187, first: 0x0020000000000000 },
4226    Node { op: Op::Rule, flags: 0, a: 972, b: 4189, first: 0x0000000000000040 },
4227    Node { op: Op::Choice, flags: 0, a: 2692, b: 4, first: 0x0020000800000040 },
4228    Node { op: Op::Keyword, flags: 0, a: 105, b: 0, first: 0x0020000000000000 },
4229    Node { op: Op::Keyword, flags: 0, a: 203, b: 0, first: 0x0000000800000000 },
4230    Node { op: Op::Keyword, flags: 0, a: 464, b: 0, first: 0x0000000000000040 },
4231    Node { op: Op::Keyword, flags: 0, a: 464, b: 0, first: 0x0000000000000040 },
4232    Node { op: Op::Keyword, flags: 0, a: 280, b: 0, first: 0x0040000000000000 },
4233    Node { op: Op::Rule, flags: 0, a: 968, b: 4181, first: 0xffffffffffffffc1 },
4234    Node { op: Op::Sequence, flags: 0, a: 2696, b: 3, first: 0x0000000000000040 },
4235    Node { op: Op::Keyword, flags: 0, a: 205, b: 0, first: 0x0000002000000000 },
4236    Node { op: Op::Keyword, flags: 0, a: 280, b: 0, first: 0x0040000000000000 },
4237    Node { op: Op::Sequence, flags: 0, a: 2699, b: 2, first: 0x0000002000000000 },
4238    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
4239    Node { op: Op::Rule, flags: 0, a: 966, b: 4168, first: 0x0000004000000000 },
4240    Node { op: Op::Rule, flags: 0, a: 965, b: 4167, first: 0x0000000000001000 },
4241    Node { op: Op::Rule, flags: 0, a: 974, b: 4196, first: 0x0000002000000000 },
4242    Node { op: Op::Choice, flags: 0, a: 2701, b: 3, first: 0x0000006000001000 },
4243    Node { op: Op::Rule, flags: 0, a: 979, b: 4219, first: 0x0200208000000000 },
4244    Node { op: Op::Optional, flags: 2, a: 4202, b: 0, first: 0x0200208000000000 },
4245    Node { op: Op::Rule, flags: 0, a: 982, b: 4230, first: 0xffffffffffffffcf },
4246    Node { op: Op::Optional, flags: 2, a: 4204, b: 0, first: 0xffffffffffffffcf },
4247    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4248    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4249    Node { op: Op::Sequence, flags: 0, a: 2704, b: 2, first: 0x0000000000000008 },
4250    Node { op: Op::Repeat, flags: 0, a: 4208, b: 0, first: 0x0000000000000008 },
4251    Node { op: Op::Optional, flags: 2, a: 4209, b: 0, first: 0x0000000000000008 },
4252    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4253    Node { op: Op::Optional, flags: 2, a: 4211, b: 0, first: 0x0000000000000008 },
4254    Node { op: Op::Sequence, flags: 0, a: 2706, b: 3, first: 0xffffffffffffffcf },
4255    Node { op: Op::Sequence, flags: 0, a: 2709, b: 3, first: 0xffffffffffffffcf },
4256    Node { op: Op::Keyword, flags: 0, a: 39, b: 0, first: 0x0000200000000000 },
4257    Node { op: Op::Rule, flags: 0, a: 978, b: 4215, first: 0x0000200000000000 },
4258    Node { op: Op::Rule, flags: 0, a: 981, b: 4226, first: 0x0200000000000000 },
4259    Node { op: Op::Rule, flags: 0, a: 983, b: 4231, first: 0x0000008000000000 },
4260    Node { op: Op::Choice, flags: 0, a: 2712, b: 3, first: 0x0200208000000000 },
4261    Node { op: Op::Keyword, flags: 0, a: 444, b: 0, first: 0x0000100000000000 },
4262    Node { op: Op::Rule, flags: 0, a: 977, b: 4214, first: 0xffffffffffffffcf },
4263    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4264    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4265    Node { op: Op::Sequence, flags: 0, a: 2715, b: 3, first: 0x0000000000000008 },
4266    Node { op: Op::Sequence, flags: 0, a: 2718, b: 2, first: 0x0000100000000000 },
4267    Node { op: Op::Keyword, flags: 0, a: 225, b: 0, first: 0x0200000000000000 },
4268    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4269    Node { op: Op::Optional, flags: 2, a: 4227, b: 0, first: 0xffffffffffffffcf },
4270    Node { op: Op::Keyword, flags: 0, a: 161, b: 0, first: 0x0008000000000000 },
4271    Node { op: Op::Sequence, flags: 0, a: 2720, b: 2, first: 0xffffffffffffffcf },
4272    Node { op: Op::Keyword, flags: 0, a: 439, b: 0, first: 0x0000008000000000 },
4273    Node { op: Op::Keyword, flags: 0, a: 445, b: 0, first: 0x0000200000000000 },
4274    Node { op: Op::Keyword, flags: 0, a: 446, b: 0, first: 0x0000400000000000 },
4275    Node { op: Op::Keyword, flags: 0, a: 425, b: 0, first: 0x0000000002000000 },
4276    Node { op: Op::Optional, flags: 2, a: 4234, b: 0, first: 0x0000000002000000 },
4277    Node { op: Op::Rule, flags: 0, a: 54, b: 284, first: 0xffffffffffffffc5 },
4278    Node { op: Op::Sequence, flags: 0, a: 2722, b: 3, first: 0x0000400000000000 },
4279    Node { op: Op::Keyword, flags: 0, a: 449, b: 0, first: 0x0002000000000000 },
4280    Node { op: Op::Keyword, flags: 0, a: 448, b: 0, first: 0x0000000000000001 },
4281    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4282    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4283    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4284    Node { op: Op::Sequence, flags: 0, a: 2725, b: 3, first: 0x0000000000000008 },
4285    Node { op: Op::Sequence, flags: 0, a: 2728, b: 2, first: 0x0000000000000001 },
4286    Node { op: Op::Keyword, flags: 0, a: 450, b: 0, first: 0x0004000000000000 },
4287    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
4288    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4289    Node { op: Op::Sequence, flags: 0, a: 2730, b: 2, first: 0x0000000000000008 },
4290    Node { op: Op::Repeat, flags: 0, a: 4248, b: 0, first: 0x0000000000000008 },
4291    Node { op: Op::Optional, flags: 2, a: 4249, b: 0, first: 0x0000000000000008 },
4292    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4293    Node { op: Op::Optional, flags: 2, a: 4251, b: 0, first: 0x0000000000000008 },
4294    Node { op: Op::Sequence, flags: 0, a: 2732, b: 3, first: 0xffffffffffffffc1 },
4295    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4296    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4297    Node { op: Op::Sequence, flags: 0, a: 2735, b: 3, first: 0x0000000000000008 },
4298    Node { op: Op::Sequence, flags: 0, a: 2738, b: 2, first: 0x0004000000000000 },
4299    Node { op: Op::Rule, flags: 0, a: 998, b: 4311, first: 0xffffffffffffffc1 },
4300    Node { op: Op::Rule, flags: 0, a: 36, b: 208, first: 0x0000000002000008 },
4301    Node { op: Op::Repeat, flags: 0, a: 4259, b: 0, first: 0x0000000002000008 },
4302    Node { op: Op::Optional, flags: 2, a: 4260, b: 0, first: 0x0000000002000008 },
4303    Node { op: Op::Sequence, flags: 0, a: 2740, b: 2, first: 0xffffffffffffffc1 },
4304    Node { op: Op::Rule, flags: 0, a: 997, b: 4298, first: 0x2a96f436a9453c00 },
4305    Node { op: Op::Rule, flags: 0, a: 379, b: 1757, first: 0x2a94b436a9452c00 },
4306    Node { op: Op::Choice, flags: 0, a: 2742, b: 2, first: 0x2a96f436a9453c00 },
4307    Node { op: Op::Rule, flags: 0, a: 1012, b: 4358, first: 0xffffffffffffffc0 },
4308    Node { op: Op::Rule, flags: 0, a: 990, b: 4265, first: 0x2a96f436a9453c00 },
4309    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
4310    Node { op: Op::Choice, flags: 0, a: 2744, b: 3, first: 0xffffffffffffffc1 },
4311    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
4312    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4313    Node { op: Op::Sequence, flags: 0, a: 2747, b: 2, first: 0x0000000000000008 },
4314    Node { op: Op::Repeat, flags: 0, a: 4272, b: 0, first: 0x0000000000000008 },
4315    Node { op: Op::Optional, flags: 2, a: 4273, b: 0, first: 0x0000000000000008 },
4316    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4317    Node { op: Op::Optional, flags: 2, a: 4275, b: 0, first: 0x0000000000000008 },
4318    Node { op: Op::Sequence, flags: 0, a: 2749, b: 3, first: 0xffffffffffffffc1 },
4319    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4320    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4321    Node { op: Op::Sequence, flags: 0, a: 2752, b: 3, first: 0x0000000000000008 },
4322    Node { op: Op::Rule, flags: 0, a: 989, b: 4262, first: 0xffffffffffffffc1 },
4323    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
4324    Node { op: Op::Sequence, flags: 0, a: 2755, b: 2, first: 0xffffffffffffffc1 },
4325    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4326    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4327    Node { op: Op::Sequence, flags: 0, a: 2757, b: 2, first: 0x0000000000000008 },
4328    Node { op: Op::Repeat, flags: 0, a: 4286, b: 0, first: 0x0000000000000008 },
4329    Node { op: Op::Optional, flags: 2, a: 4287, b: 0, first: 0x0000000000000008 },
4330    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4331    Node { op: Op::Optional, flags: 2, a: 4289, b: 0, first: 0x0000000000000008 },
4332    Node { op: Op::Sequence, flags: 0, a: 2759, b: 3, first: 0xffffffffffffffcf },
4333    Node { op: Op::Optional, flags: 2, a: 4291, b: 0, first: 0xffffffffffffffcf },
4334    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4335    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4336    Node { op: Op::Sequence, flags: 0, a: 2762, b: 3, first: 0x0000000000000008 },
4337    Node { op: Op::Identifier, flags: 0, a: Suggestion::TypeName as u32, b: 0, first: 0xffffffffffffffc1 },
4338    Node { op: Op::Rule, flags: 0, a: 995, b: 4296, first: 0xffffffffffffffc1 },
4339    Node { op: Op::KeywordClass, flags: 0, a: 16, b: 0, first: 0x2a96f436a9453c00 },
4340    Node { op: Op::Rule, flags: 0, a: 951, b: 4123, first: 0x0000003000000000 },
4341    Node { op: Op::Rule, flags: 0, a: 478, b: 2200, first: 0x0000020000000000 },
4342    Node { op: Op::Rule, flags: 0, a: 67, b: 349, first: 0x0000080000000000 },
4343    Node { op: Op::Rule, flags: 0, a: 778, b: 3412, first: 0x0000000010040000 },
4344    Node { op: Op::Rule, flags: 0, a: 1048, b: 4563, first: 0x0000000000000001 },
4345    Node { op: Op::Rule, flags: 0, a: 539, b: 2485, first: 0x0000000000002000 },
4346    Node { op: Op::Rule, flags: 0, a: 988, b: 4257, first: 0x0004000000000000 },
4347    Node { op: Op::Rule, flags: 0, a: 401, b: 1852, first: 0x0000000000000001 },
4348    Node { op: Op::Rule, flags: 0, a: 999, b: 4314, first: 0x0100000000000000 },
4349    Node { op: Op::Rule, flags: 0, a: 608, b: 2756, first: 0x09105ac000002000 },
4350    Node { op: Op::Rule, flags: 0, a: 848, b: 3654, first: 0x0008000000000000 },
4351    Node { op: Op::Rule, flags: 0, a: 872, b: 3746, first: 0xffffffffffffffc1 },
4352    Node { op: Op::Choice, flags: 0, a: 2765, b: 12, first: 0xffffffffffffffc1 },
4353    Node { op: Op::Keyword, flags: 0, a: 456, b: 0, first: 0x0100000000000000 },
4354    Node { op: Op::Rule, flags: 0, a: 118, b: 577, first: 0x0000000000000008 },
4355    Node { op: Op::Sequence, flags: 0, a: 2777, b: 2, first: 0x0100000000000000 },
4356    Node { op: Op::Keyword, flags: 0, a: 457, b: 0, first: 0x0200000000000000 },
4357    Node { op: Op::Keyword, flags: 0, a: 457, b: 0, first: 0x0200000000000000 },
4358    Node { op: Op::Keyword, flags: 0, a: 458, b: 0, first: 0x0400000000000000 },
4359    Node { op: Op::Keyword, flags: 0, a: 461, b: 0, first: 0x2000000000000000 },
4360    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4361    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4362    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4363    Node { op: Op::Sequence, flags: 0, a: 2779, b: 3, first: 0x0000000000000008 },
4364    Node { op: Op::Sequence, flags: 0, a: 2782, b: 2, first: 0x2000000000000000 },
4365    Node { op: Op::Rule, flags: 0, a: 1006, b: 4338, first: 0xffffffffffffffc5 },
4366    Node { op: Op::Rule, flags: 0, a: 1005, b: 4337, first: 0x0000000000000008 },
4367    Node { op: Op::Choice, flags: 0, a: 2784, b: 2, first: 0xffffffffffffffcd },
4368    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
4369    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4370    Node { op: Op::Sequence, flags: 0, a: 2786, b: 2, first: 0x0000000000000008 },
4371    Node { op: Op::Repeat, flags: 0, a: 4329, b: 0, first: 0x0000000000000008 },
4372    Node { op: Op::Optional, flags: 2, a: 4330, b: 0, first: 0x0000000000000008 },
4373    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4374    Node { op: Op::Optional, flags: 2, a: 4332, b: 0, first: 0x0000000000000008 },
4375    Node { op: Op::Sequence, flags: 0, a: 2788, b: 3, first: 0xffffffffffffffc5 },
4376    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4377    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4378    Node { op: Op::Sequence, flags: 0, a: 2791, b: 3, first: 0x0000000000000008 },
4379    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
4380    Node { op: Op::Keyword, flags: 0, a: 462, b: 0, first: 0x4000000000000000 },
4381    Node { op: Op::Keyword, flags: 0, a: 312, b: 0, first: 0x0000000010000000 },
4382    Node { op: Op::Choice, flags: 0, a: 2794, b: 2, first: 0x4000000010000000 },
4383    Node { op: Op::Rule, flags: 0, a: 1007, b: 4341, first: 0x4000000010000000 },
4384    Node { op: Op::Rule, flags: 0, a: 936, b: 4060, first: 0xffffffffffffffcd },
4385    Node { op: Op::Keyword, flags: 0, a: 285, b: 0, first: 0x0800000000000000 },
4386    Node { op: Op::Rule, flags: 0, a: 943, b: 4098, first: 0xffffffffffffffcf },
4387    Node { op: Op::Rule, flags: 0, a: 483, b: 2216, first: 0x0000040000000000 },
4388    Node { op: Op::Optional, flags: 2, a: 4346, b: 0, first: 0x0000040000000000 },
4389    Node { op: Op::Sequence, flags: 0, a: 2796, b: 5, first: 0x4000000010000000 },
4390    Node { op: Op::Rule, flags: 0, a: 943, b: 4098, first: 0xffffffffffffffcf },
4391    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4392    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4393    Node { op: Op::Sequence, flags: 0, a: 2801, b: 3, first: 0x0000000000000008 },
4394    Node { op: Op::Rule, flags: 0, a: 1004, b: 4326, first: 0xffffffffffffffcd },
4395    Node { op: Op::Keyword, flags: 0, a: 189, b: 0, first: 0x0000000000200000 },
4396    Node { op: Op::Rule, flags: 0, a: 1009, b: 4352, first: 0x0000000000000008 },
4397    Node { op: Op::Sequence, flags: 0, a: 2804, b: 3, first: 0xffffffffffffffcd },
4398    Node { op: Op::Rule, flags: 0, a: 931, b: 4033, first: 0xffffffffffffffc5 },
4399    Node { op: Op::KeywordClass, flags: 0, a: 2, b: 0, first: 0xffffffffffffffc0 },
4400    Node { op: Op::Keyword, flags: 0, a: 285, b: 0, first: 0x0800000000000000 },
4401    Node { op: Op::Keyword, flags: 0, a: 464, b: 0, first: 0x0000000000000040 },
4402    Node { op: Op::Rule, flags: 0, a: 501, b: 2296, first: 0x0004040000100000 },
4403    Node { op: Op::Sequence, flags: 0, a: 2807, b: 3, first: 0x0800000000000000 },
4404    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
4405    Node { op: Op::Optional, flags: 2, a: 4363, b: 0, first: 0x0000000004000000 },
4406    Node { op: Op::Rule, flags: 0, a: 113, b: 553, first: 0xffffffffffffffc1 },
4407    Node { op: Op::Sequence, flags: 0, a: 2810, b: 2, first: 0xffffffffffffffc1 },
4408    Node { op: Op::Rule, flags: 0, a: 73, b: 376, first: 0x0000400000000000 },
4409    Node { op: Op::Keyword, flags: 0, a: 464, b: 0, first: 0x0000000000000040 },
4410    Node { op: Op::Keyword, flags: 0, a: 146, b: 0, first: 0x0000001000000000 },
4411    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
4412    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4413    Node { op: Op::Sequence, flags: 0, a: 2812, b: 2, first: 0x0000000000000008 },
4414    Node { op: Op::Repeat, flags: 0, a: 4372, b: 0, first: 0x0000000000000008 },
4415    Node { op: Op::Optional, flags: 2, a: 4373, b: 0, first: 0x0000000000000008 },
4416    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4417    Node { op: Op::Optional, flags: 2, a: 4375, b: 0, first: 0x0000000000000008 },
4418    Node { op: Op::Sequence, flags: 0, a: 2814, b: 3, first: 0xffffffffffffffc1 },
4419    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4420    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4421    Node { op: Op::Sequence, flags: 0, a: 2817, b: 3, first: 0x0000000000000008 },
4422    Node { op: Op::Optional, flags: 2, a: 4380, b: 0, first: 0x0000000000000008 },
4423    Node { op: Op::Sequence, flags: 0, a: 2820, b: 3, first: 0x0000000000000040 },
4424    Node { op: Op::Keyword, flags: 0, a: 464, b: 0, first: 0x0000000000000040 },
4425    Node { op: Op::Rule, flags: 0, a: 1018, b: 4389, first: 0x0004400000000000 },
4426    Node { op: Op::Optional, flags: 2, a: 4384, b: 0, first: 0x0004400000000000 },
4427    Node { op: Op::Sequence, flags: 0, a: 2823, b: 2, first: 0x0000000000000040 },
4428    Node { op: Op::Rule, flags: 0, a: 1019, b: 4390, first: 0x0004000000000000 },
4429    Node { op: Op::Rule, flags: 0, a: 1015, b: 4367, first: 0x0000400000000000 },
4430    Node { op: Op::Choice, flags: 0, a: 2825, b: 2, first: 0x0004400000000000 },
4431    Node { op: Op::Rule, flags: 0, a: 1020, b: 4393, first: 0x0004000000000000 },
4432    Node { op: Op::Keyword, flags: 0, a: 392, b: 0, first: 0x0004000000000000 },
4433    Node { op: Op::Rule, flags: 0, a: 1021, b: 4396, first: 0xffffffffffffffc9 },
4434    Node { op: Op::Sequence, flags: 0, a: 2827, b: 2, first: 0x0004000000000000 },
4435    Node { op: Op::Rule, flags: 0, a: 1022, b: 4399, first: 0xffffffffffffffc9 },
4436    Node { op: Op::Rule, flags: 0, a: 893, b: 3863, first: 0x0000000000000008 },
4437    Node { op: Op::Choice, flags: 0, a: 2829, b: 2, first: 0xffffffffffffffc9 },
4438    Node { op: Op::Rule, flags: 0, a: 1025, b: 4416, first: 0xffffffffffffffc1 },
4439    Node { op: Op::Rule, flags: 0, a: 1026, b: 4430, first: 0x0000000000000008 },
4440    Node { op: Op::Choice, flags: 0, a: 2831, b: 2, first: 0xffffffffffffffc9 },
4441    Node { op: Op::Rule, flags: 0, a: 135, b: 660, first: 0xffffffffffffffc1 },
4442    Node { op: Op::Rule, flags: 0, a: 264, b: 1219, first: 0x000000000000000a },
4443    Node { op: Op::Repeat, flags: 0, a: 4401, b: 0, first: 0x000000000000000a },
4444    Node { op: Op::Optional, flags: 2, a: 4402, b: 0, first: 0x000000000000000a },
4445    Node { op: Op::Sequence, flags: 0, a: 2833, b: 2, first: 0xffffffffffffffc1 },
4446    Node { op: Op::Rule, flags: 0, a: 1023, b: 4404, first: 0xffffffffffffffc1 },
4447    Node { op: Op::Symbol, flags: 0, a: 36, b: 0, first: 0x0000000000000008 },
4448    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4449    Node { op: Op::Sequence, flags: 0, a: 2835, b: 3, first: 0xffffffffffffffc1 },
4450    Node { op: Op::Rule, flags: 0, a: 1024, b: 4408, first: 0xffffffffffffffc1 },
4451    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4452    Node { op: Op::Sequence, flags: 0, a: 2838, b: 2, first: 0x0000000000000008 },
4453    Node { op: Op::Repeat, flags: 0, a: 4411, b: 0, first: 0x0000000000000008 },
4454    Node { op: Op::Optional, flags: 2, a: 4412, b: 0, first: 0x0000000000000008 },
4455    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4456    Node { op: Op::Optional, flags: 2, a: 4414, b: 0, first: 0x0000000000000008 },
4457    Node { op: Op::Sequence, flags: 0, a: 2840, b: 3, first: 0xffffffffffffffc1 },
4458    Node { op: Op::Rule, flags: 0, a: 135, b: 660, first: 0xffffffffffffffc1 },
4459    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4460    Node { op: Op::Sequence, flags: 0, a: 2843, b: 2, first: 0x0000000000000008 },
4461    Node { op: Op::Repeat, flags: 0, a: 4419, b: 0, first: 0x0000000000000008 },
4462    Node { op: Op::Optional, flags: 2, a: 4420, b: 0, first: 0x0000000000000008 },
4463    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4464    Node { op: Op::Optional, flags: 2, a: 4422, b: 0, first: 0x0000000000000008 },
4465    Node { op: Op::Sequence, flags: 0, a: 2845, b: 3, first: 0xffffffffffffffc1 },
4466    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4467    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4468    Node { op: Op::Sequence, flags: 0, a: 2848, b: 3, first: 0x0000000000000008 },
4469    Node { op: Op::Symbol, flags: 0, a: 36, b: 0, first: 0x0000000000000008 },
4470    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4471    Node { op: Op::Sequence, flags: 0, a: 2851, b: 3, first: 0x0000000000000008 },
4472    Node { op: Op::Rule, flags: 0, a: 1065, b: 4645, first: 0x0000000400000000 },
4473    Node { op: Op::Optional, flags: 2, a: 4431, b: 0, first: 0x0000000400000000 },
4474    Node { op: Op::Keyword, flags: 0, a: 464, b: 0, first: 0x0000000000000040 },
4475    Node { op: Op::Rule, flags: 0, a: 1028, b: 4445, first: 0xffffffffffffffc5 },
4476    Node { op: Op::Rule, flags: 0, a: 1022, b: 4399, first: 0xffffffffffffffc9 },
4477    Node { op: Op::Rule, flags: 0, a: 371, b: 1733, first: 0x0008000000000000 },
4478    Node { op: Op::Optional, flags: 2, a: 4436, b: 0, first: 0x0008000000000000 },
4479    Node { op: Op::Rule, flags: 0, a: 1053, b: 4574, first: 0x0000000080000000 },
4480    Node { op: Op::Optional, flags: 2, a: 4438, b: 0, first: 0x0000000080000000 },
4481    Node { op: Op::Rule, flags: 0, a: 771, b: 3379, first: 0x0000000000200000 },
4482    Node { op: Op::Optional, flags: 2, a: 4440, b: 0, first: 0x0000000000200000 },
4483    Node { op: Op::Sequence, flags: 0, a: 2854, b: 7, first: 0x0000000400000040 },
4484    Node { op: Op::Rule, flags: 0, a: 56, b: 297, first: 0xffffffffffffffc5 },
4485    Node { op: Op::Rule, flags: 0, a: 53, b: 281, first: 0xffffffffffffffc5 },
4486    Node { op: Op::Choice, flags: 0, a: 2861, b: 2, first: 0xffffffffffffffc5 },
4487    Node { op: Op::Keyword, flags: 0, a: 465, b: 0, first: 0x0000000000000080 },
4488    Node { op: Op::Rule, flags: 0, a: 1030, b: 4452, first: 0xffffffffffffffc1 },
4489    Node { op: Op::Sequence, flags: 0, a: 2863, b: 2, first: 0x0000000000000080 },
4490    Node { op: Op::Rule, flags: 0, a: 1031, b: 4459, first: 0xffffffffffffffc1 },
4491    Node { op: Op::Rule, flags: 0, a: 794, b: 3462, first: 0xffffffffffffffc1 },
4492    Node { op: Op::Rule, flags: 0, a: 92, b: 438, first: 0xffffffffffffffc1 },
4493    Node { op: Op::Choice, flags: 0, a: 2865, b: 3, first: 0xffffffffffffffc1 },
4494    Node { op: Op::Rule, flags: 0, a: 91, b: 437, first: 0xffffffffffffffc1 },
4495    Node { op: Op::Symbol, flags: 0, a: 47, b: 0, first: 0x000000000000000a },
4496    Node { op: Op::Rule, flags: 0, a: 758, b: 3344, first: 0xffffffffffffffc1 },
4497    Node { op: Op::Rule, flags: 0, a: 264, b: 1219, first: 0x000000000000000a },
4498    Node { op: Op::Repeat, flags: 0, a: 4456, b: 0, first: 0x000000000000000a },
4499    Node { op: Op::Optional, flags: 2, a: 4457, b: 0, first: 0x000000000000000a },
4500    Node { op: Op::Sequence, flags: 0, a: 2868, b: 4, first: 0xffffffffffffffc1 },
4501    Node { op: Op::Keyword, flags: 0, a: 467, b: 0, first: 0x0000000000000200 },
4502    Node { op: Op::Rule, flags: 0, a: 135, b: 660, first: 0xffffffffffffffc1 },
4503    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4504    Node { op: Op::Sequence, flags: 0, a: 2872, b: 2, first: 0x0000000000000008 },
4505    Node { op: Op::Repeat, flags: 0, a: 4463, b: 0, first: 0x0000000000000008 },
4506    Node { op: Op::Optional, flags: 2, a: 4464, b: 0, first: 0x0000000000000008 },
4507    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4508    Node { op: Op::Optional, flags: 2, a: 4466, b: 0, first: 0x0000000000000008 },
4509    Node { op: Op::Sequence, flags: 0, a: 2874, b: 3, first: 0xffffffffffffffc1 },
4510    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4511    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4512    Node { op: Op::Sequence, flags: 0, a: 2877, b: 3, first: 0x0000000000000008 },
4513    Node { op: Op::Sequence, flags: 0, a: 2880, b: 2, first: 0x0000000000000200 },
4514    Node { op: Op::Keyword, flags: 0, a: 467, b: 0, first: 0x0000000000000200 },
4515    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4516    Node { op: Op::Sequence, flags: 0, a: 2882, b: 2, first: 0x0000000000000200 },
4517    Node { op: Op::Keyword, flags: 0, a: 467, b: 0, first: 0x0000000000000200 },
4518    Node { op: Op::Keyword, flags: 0, a: 217, b: 0, first: 0x0002000000000000 },
4519    Node { op: Op::Rule, flags: 0, a: 943, b: 4098, first: 0xffffffffffffffcf },
4520    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4521    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4522    Node { op: Op::Sequence, flags: 0, a: 2884, b: 3, first: 0x0000000000000008 },
4523    Node { op: Op::Sequence, flags: 0, a: 2887, b: 3, first: 0x0000000000000200 },
4524    Node { op: Op::Keyword, flags: 0, a: 467, b: 0, first: 0x0000000000000200 },
4525    Node { op: Op::Keyword, flags: 0, a: 373, b: 0, first: 0x0000000080000000 },
4526    Node { op: Op::Sequence, flags: 0, a: 2890, b: 2, first: 0x0000000000000200 },
4527    Node { op: Op::Rule, flags: 0, a: 632, b: 2821, first: 0x0010000000000000 },
4528    Node { op: Op::Optional, flags: 2, a: 4486, b: 0, first: 0x0010000000000000 },
4529    Node { op: Op::Rule, flags: 0, a: 631, b: 2820, first: 0x0004000000000000 },
4530    Node { op: Op::Optional, flags: 2, a: 4488, b: 0, first: 0x0004000000000000 },
4531    Node { op: Op::Rule, flags: 0, a: 633, b: 2822, first: 0x0000000000400000 },
4532    Node { op: Op::Optional, flags: 2, a: 4490, b: 0, first: 0x0000000000400000 },
4533    Node { op: Op::Rule, flags: 0, a: 630, b: 2819, first: 0x0000000000180000 },
4534    Node { op: Op::Optional, flags: 2, a: 4492, b: 0, first: 0x0000000000180000 },
4535    Node { op: Op::Sequence, flags: 2, a: 2892, b: 4, first: 0x0014000000580000 },
4536    Node { op: Op::Rule, flags: 0, a: 630, b: 2819, first: 0x0000000000180000 },
4537    Node { op: Op::Rule, flags: 0, a: 631, b: 2820, first: 0x0004000000000000 },
4538    Node { op: Op::Rule, flags: 0, a: 632, b: 2821, first: 0x0010000000000000 },
4539    Node { op: Op::Rule, flags: 0, a: 633, b: 2822, first: 0x0000000000400000 },
4540    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
4541    Node { op: Op::Choice, flags: 0, a: 2896, b: 5, first: 0xffffffffffffffc1 },
4542    Node { op: Op::Rule, flags: 0, a: 1039, b: 4514, first: 0x0000000000000008 },
4543    Node { op: Op::Rule, flags: 2, a: 1036, b: 4494, first: 0x0014000000580000 },
4544    Node { op: Op::Choice, flags: 2, a: 2901, b: 2, first: 0x0014000000580008 },
4545    Node { op: Op::Rule, flags: 0, a: 1037, b: 4500, first: 0xffffffffffffffc1 },
4546    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4547    Node { op: Op::Sequence, flags: 0, a: 2903, b: 2, first: 0x0000000000000008 },
4548    Node { op: Op::Repeat, flags: 0, a: 4506, b: 0, first: 0x0000000000000008 },
4549    Node { op: Op::Optional, flags: 2, a: 4507, b: 0, first: 0x0000000000000008 },
4550    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4551    Node { op: Op::Optional, flags: 2, a: 4509, b: 0, first: 0x0000000000000008 },
4552    Node { op: Op::Sequence, flags: 0, a: 2905, b: 3, first: 0xffffffffffffffc1 },
4553    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4554    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4555    Node { op: Op::Sequence, flags: 0, a: 2908, b: 3, first: 0x0000000000000008 },
4556    Node { op: Op::Keyword, flags: 0, a: 468, b: 0, first: 0x0000000000000400 },
4557    Node { op: Op::Rule, flags: 2, a: 1038, b: 4503, first: 0x0014000000580008 },
4558    Node { op: Op::Optional, flags: 2, a: 4516, b: 0, first: 0x0014000000580008 },
4559    Node { op: Op::Rule, flags: 0, a: 25, b: 144, first: 0xffffffffffffffc5 },
4560    Node { op: Op::Optional, flags: 2, a: 4518, b: 0, first: 0xffffffffffffffc5 },
4561    Node { op: Op::Sequence, flags: 0, a: 2911, b: 3, first: 0x0000000000000400 },
4562    Node { op: Op::Keyword, flags: 0, a: 472, b: 0, first: 0x0000000000004000 },
4563    Node { op: Op::Keyword, flags: 0, a: 473, b: 0, first: 0x0000000000008000 },
4564    Node { op: Op::Choice, flags: 0, a: 2914, b: 2, first: 0x000000000000c000 },
4565    Node { op: Op::Keyword, flags: 0, a: 473, b: 0, first: 0x0000000000008000 },
4566    Node { op: Op::Rule, flags: 0, a: 1043, b: 4544, first: 0x0000000000000008 },
4567    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4568    Node { op: Op::Sequence, flags: 0, a: 2916, b: 2, first: 0x0000000000000008 },
4569    Node { op: Op::Repeat, flags: 0, a: 4527, b: 0, first: 0x0000000000000008 },
4570    Node { op: Op::Optional, flags: 2, a: 4528, b: 0, first: 0x0000000000000008 },
4571    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4572    Node { op: Op::Optional, flags: 2, a: 4530, b: 0, first: 0x0000000000000008 },
4573    Node { op: Op::Sequence, flags: 0, a: 2918, b: 3, first: 0x0000000000000008 },
4574    Node { op: Op::Sequence, flags: 0, a: 2921, b: 2, first: 0x0000000000008000 },
4575    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4576    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4577    Node { op: Op::Sequence, flags: 0, a: 2923, b: 2, first: 0x0000000000000008 },
4578    Node { op: Op::Repeat, flags: 0, a: 4536, b: 0, first: 0x0000000000000008 },
4579    Node { op: Op::Optional, flags: 2, a: 4537, b: 0, first: 0x0000000000000008 },
4580    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4581    Node { op: Op::Optional, flags: 2, a: 4539, b: 0, first: 0x0000000000000008 },
4582    Node { op: Op::Sequence, flags: 0, a: 2925, b: 3, first: 0xffffffffffffffcf },
4583    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4584    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4585    Node { op: Op::Sequence, flags: 0, a: 2928, b: 3, first: 0x0000000000000008 },
4586    Node { op: Op::Rule, flags: 0, a: 923, b: 3992, first: 0xffffffffffffffc5 },
4587    Node { op: Op::Optional, flags: 2, a: 4545, b: 0, first: 0xffffffffffffffc5 },
4588    Node { op: Op::Rule, flags: 0, a: 1042, b: 4533, first: 0x0000000000008000 },
4589    Node { op: Op::Rule, flags: 0, a: 921, b: 3984, first: 0xffffffffffffffc1 },
4590    Node { op: Op::Optional, flags: 2, a: 4548, b: 0, first: 0xffffffffffffffc1 },
4591    Node { op: Op::Sequence, flags: 0, a: 2931, b: 3, first: 0xffffffffffffffc5 },
4592    Node { op: Op::Symbol, flags: 0, a: 36, b: 0, first: 0x0000000000000008 },
4593    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
4594    Node { op: Op::Choice, flags: 0, a: 2934, b: 2, first: 0x0000004000000008 },
4595    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4596    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4597    Node { op: Op::Sequence, flags: 0, a: 2936, b: 2, first: 0x0000000000000008 },
4598    Node { op: Op::Repeat, flags: 0, a: 4556, b: 0, first: 0x0000000000000008 },
4599    Node { op: Op::Optional, flags: 2, a: 4557, b: 0, first: 0x0000000000000008 },
4600    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4601    Node { op: Op::Optional, flags: 2, a: 4559, b: 0, first: 0x0000000000000008 },
4602    Node { op: Op::Sequence, flags: 0, a: 2938, b: 3, first: 0xffffffffffffffcf },
4603    Node { op: Op::Keyword, flags: 0, a: 475, b: 0, first: 0x0000000000020000 },
4604    Node { op: Op::Keyword, flags: 0, a: 478, b: 0, first: 0x0000000000000001 },
4605    Node { op: Op::Keyword, flags: 0, a: 481, b: 0, first: 0x0000000000800000 },
4606    Node { op: Op::Keyword, flags: 0, a: 481, b: 0, first: 0x0000000000800000 },
4607    Node { op: Op::Rule, flags: 0, a: 426, b: 1952, first: 0xffffffffffffffc5 },
4608    Node { op: Op::Sequence, flags: 0, a: 2941, b: 2, first: 0x0000000000800000 },
4609    Node { op: Op::Keyword, flags: 0, a: 484, b: 0, first: 0x0000000004000000 },
4610    Node { op: Op::Keyword, flags: 0, a: 486, b: 0, first: 0x0000000010000000 },
4611    Node { op: Op::Keyword, flags: 0, a: 487, b: 0, first: 0x0000000020000000 },
4612    Node { op: Op::Choice, flags: 0, a: 2943, b: 2, first: 0x0000000030000000 },
4613    Node { op: Op::Keyword, flags: 0, a: 489, b: 0, first: 0x0000000080000000 },
4614    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4615    Node { op: Op::Sequence, flags: 0, a: 2945, b: 2, first: 0x0000000080000000 },
4616    Node { op: Op::Keyword, flags: 0, a: 491, b: 0, first: 0x0000000200000000 },
4617    Node { op: Op::Rule, flags: 0, a: 1055, b: 4588, first: 0xffffffffffffffc1 },
4618    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4619    Node { op: Op::Sequence, flags: 0, a: 2947, b: 2, first: 0x0000000000000008 },
4620    Node { op: Op::Repeat, flags: 0, a: 4578, b: 0, first: 0x0000000000000008 },
4621    Node { op: Op::Optional, flags: 2, a: 4579, b: 0, first: 0x0000000000000008 },
4622    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4623    Node { op: Op::Optional, flags: 2, a: 4581, b: 0, first: 0x0000000000000008 },
4624    Node { op: Op::Sequence, flags: 0, a: 2949, b: 3, first: 0xffffffffffffffc1 },
4625    Node { op: Op::Sequence, flags: 0, a: 2952, b: 2, first: 0x0000000200000000 },
4626    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
4627    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
4628    Node { op: Op::Rule, flags: 0, a: 1061, b: 4614, first: 0x0000000000000008 },
4629    Node { op: Op::Sequence, flags: 0, a: 2954, b: 3, first: 0xffffffffffffffc1 },
4630    Node { op: Op::Keyword, flags: 0, a: 137, b: 0, first: 0x0000000008000000 },
4631    Node { op: Op::Rule, flags: 0, a: 1057, b: 4596, first: 0x2000040c00000000 },
4632    Node { op: Op::Sequence, flags: 0, a: 2957, b: 2, first: 0x0000000008000000 },
4633    Node { op: Op::Rule, flags: 0, a: 302, b: 1450, first: 0x0000000400000000 },
4634    Node { op: Op::Rule, flags: 0, a: 304, b: 1452, first: 0x2000000000000000 },
4635    Node { op: Op::Rule, flags: 0, a: 313, b: 1483, first: 0x0000000800000000 },
4636    Node { op: Op::Rule, flags: 0, a: 310, b: 1476, first: 0x0000040000000000 },
4637    Node { op: Op::Choice, flags: 0, a: 2959, b: 4, first: 0x2000040c00000000 },
4638    Node { op: Op::Rule, flags: 0, a: 654, b: 2917, first: 0x0000000000000008 },
4639    Node { op: Op::Rule, flags: 0, a: 1061, b: 4614, first: 0x0000000000000008 },
4640    Node { op: Op::Rule, flags: 0, a: 427, b: 1953, first: 0xffffffffffffffc1 },
4641    Node { op: Op::Choice, flags: 0, a: 2963, b: 3, first: 0xffffffffffffffc9 },
4642    Node { op: Op::Rule, flags: 0, a: 1064, b: 4633, first: 0x0000000000200000 },
4643    Node { op: Op::Optional, flags: 2, a: 4601, b: 0, first: 0x0000000000200000 },
4644    Node { op: Op::Rule, flags: 0, a: 639, b: 2844, first: 0x0000000000000080 },
4645    Node { op: Op::Optional, flags: 2, a: 4603, b: 0, first: 0x0000000000000080 },
4646    Node { op: Op::Rule, flags: 0, a: 364, b: 1706, first: 0x0040000020000040 },
4647    Node { op: Op::Optional, flags: 2, a: 4605, b: 0, first: 0x0040000020000040 },
4648    Node { op: Op::Sequence, flags: 2, a: 2966, b: 3, first: 0x00400000202000c0 },
4649    Node { op: Op::Rule, flags: 2, a: 1059, b: 4607, first: 0x00400000202000c0 },
4650    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4651    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4652    Node { op: Op::Sequence, flags: 0, a: 2969, b: 3, first: 0x0000000000000008 },
4653    Node { op: Op::Rule, flags: 0, a: 1063, b: 4622, first: 0x0000000000000008 },
4654    Node { op: Op::Rule, flags: 0, a: 1060, b: 4611, first: 0x0000000000000008 },
4655    Node { op: Op::Choice, flags: 0, a: 2972, b: 2, first: 0x0000000000000008 },
4656    Node { op: Op::Rule, flags: 0, a: 57, b: 298, first: 0xffffffffffffffc1 },
4657    Node { op: Op::Optional, flags: 2, a: 4615, b: 0, first: 0xffffffffffffffc1 },
4658    Node { op: Op::Rule, flags: 2, a: 1059, b: 4607, first: 0x00400000202000c0 },
4659    Node { op: Op::Sequence, flags: 2, a: 2974, b: 2, first: 0xffffffffffffffc1 },
4660    Node { op: Op::Rule, flags: 2, a: 1062, b: 4618, first: 0xffffffffffffffc1 },
4661    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4662    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4663    Node { op: Op::Sequence, flags: 0, a: 2976, b: 3, first: 0x0000000000000008 },
4664    Node { op: Op::Keyword, flags: 0, a: 305, b: 0, first: 0x0000000000200000 },
4665    Node { op: Op::Keyword, flags: 0, a: 40, b: 0, first: 0x0000400000000000 },
4666    Node { op: Op::Rule, flags: 0, a: 327, b: 1562, first: 0xffffffffffffffcf },
4667    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4668    Node { op: Op::Sequence, flags: 0, a: 2979, b: 2, first: 0x0000000000000008 },
4669    Node { op: Op::Repeat, flags: 0, a: 4627, b: 0, first: 0x0000000000000008 },
4670    Node { op: Op::Optional, flags: 2, a: 4628, b: 0, first: 0x0000000000000008 },
4671    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4672    Node { op: Op::Optional, flags: 2, a: 4630, b: 0, first: 0x0000000000000008 },
4673    Node { op: Op::Sequence, flags: 0, a: 2981, b: 3, first: 0xffffffffffffffcf },
4674    Node { op: Op::Sequence, flags: 0, a: 2984, b: 3, first: 0x0000000000200000 },
4675    Node { op: Op::Keyword, flags: 0, a: 492, b: 0, first: 0x0000000400000000 },
4676    Node { op: Op::Rule, flags: 0, a: 723, b: 3193, first: 0x0800000000000000 },
4677    Node { op: Op::Optional, flags: 2, a: 4635, b: 0, first: 0x0800000000000000 },
4678    Node { op: Op::Rule, flags: 0, a: 1075, b: 4679, first: 0xffffffffffffffc5 },
4679    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4680    Node { op: Op::Sequence, flags: 0, a: 2987, b: 2, first: 0x0000000000000008 },
4681    Node { op: Op::Repeat, flags: 0, a: 4639, b: 0, first: 0x0000000000000008 },
4682    Node { op: Op::Optional, flags: 2, a: 4640, b: 0, first: 0x0000000000000008 },
4683    Node { op: Op::Symbol, flags: 0, a: 0, b: 0, first: 0x0000000000000008 },
4684    Node { op: Op::Optional, flags: 2, a: 4642, b: 0, first: 0x0000000000000008 },
4685    Node { op: Op::Sequence, flags: 0, a: 2989, b: 3, first: 0xffffffffffffffc5 },
4686    Node { op: Op::Sequence, flags: 0, a: 2992, b: 3, first: 0x0000000400000000 },
4687    Node { op: Op::Rule, flags: 0, a: 1067, b: 4651, first: 0x0000000400000000 },
4688    Node { op: Op::Rule, flags: 0, a: 1069, b: 4658, first: 0x0000000400000000 },
4689    Node { op: Op::Choice, flags: 0, a: 2995, b: 2, first: 0x0000000400000000 },
4690    Node { op: Op::Keyword, flags: 0, a: 492, b: 0, first: 0x0000000400000000 },
4691    Node { op: Op::Keyword, flags: 0, a: 89, b: 0, first: 0x0000002000000000 },
4692    Node { op: Op::Sequence, flags: 0, a: 2997, b: 2, first: 0x0000000400000000 },
4693    Node { op: Op::Keyword, flags: 0, a: 492, b: 0, first: 0x0000000400000000 },
4694    Node { op: Op::Rule, flags: 0, a: 736, b: 3254, first: 0x0000001400000008 },
4695    Node { op: Op::Sequence, flags: 0, a: 2999, b: 2, first: 0x0000000400000000 },
4696    Node { op: Op::Keyword, flags: 0, a: 492, b: 0, first: 0x0000000400000000 },
4697    Node { op: Op::Keyword, flags: 0, a: 268, b: 0, first: 0x0000040000000000 },
4698    Node { op: Op::Keyword, flags: 0, a: 89, b: 0, first: 0x0000002000000000 },
4699    Node { op: Op::Sequence, flags: 0, a: 3001, b: 3, first: 0x0000000400000000 },
4700    Node { op: Op::Keyword, flags: 0, a: 492, b: 0, first: 0x0000000400000000 },
4701    Node { op: Op::Rule, flags: 0, a: 1074, b: 4669, first: 0x0000000400000000 },
4702    Node { op: Op::Rule, flags: 0, a: 1078, b: 4688, first: 0x0000001000000000 },
4703    Node { op: Op::Choice, flags: 0, a: 3004, b: 2, first: 0x0000001400000000 },
4704    Node { op: Op::Rule, flags: 0, a: 1070, b: 4659, first: 0x0000000400000000 },
4705    Node { op: Op::Rule, flags: 0, a: 1077, b: 4687, first: 0x0000001000000000 },
4706    Node { op: Op::Choice, flags: 0, a: 3006, b: 2, first: 0x0000001400000000 },
4707    Node { op: Op::Keyword, flags: 0, a: 492, b: 0, first: 0x0000000400000000 },
4708    Node { op: Op::Keyword, flags: 0, a: 292, b: 0, first: 0x0000000000000100 },
4709    Node { op: Op::Sequence, flags: 0, a: 3008, b: 2, first: 0x0000000400000000 },
4710    Node { op: Op::Keyword, flags: 0, a: 492, b: 0, first: 0x0000000400000000 },
4711    Node { op: Op::Rule, flags: 0, a: 116, b: 563, first: 0xffffffffffffffc5 },
4712    Node { op: Op::Rule, flags: 0, a: 454, b: 2046, first: 0x0000000000000008 },
4713    Node { op: Op::Optional, flags: 2, a: 4671, b: 0, first: 0x0000000000000008 },
4714    Node { op: Op::Rule, flags: 0, a: 1034, b: 4482, first: 0x0000000000000200 },
4715    Node { op: Op::Optional, flags: 2, a: 4673, b: 0, first: 0x0000000000000200 },
4716    Node { op: Op::Keyword, flags: 0, a: 20, b: 0, first: 0x0000000004000000 },
4717    Node { op: Op::Rule, flags: 0, a: 542, b: 2502, first: 0x0000100000020000 },
4718    Node { op: Op::Optional, flags: 2, a: 4676, b: 0, first: 0x0000100000020000 },
4719    Node { op: Op::Rule, flags: 0, a: 77, b: 388, first: 0x0000000000000008 },
4720    Node { op: Op::Sequence, flags: 0, a: 3010, b: 6, first: 0xffffffffffffffc5 },
4721    Node { op: Op::Keyword, flags: 0, a: 493, b: 0, first: 0x0000000800000000 },
4722    Node { op: Op::Keyword, flags: 0, a: 171, b: 0, first: 0x2000000000000000 },
4723    Node { op: Op::Rule, flags: 0, a: 639, b: 2844, first: 0x0000000000000080 },
4724    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4725    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4726    Node { op: Op::Sequence, flags: 0, a: 3016, b: 3, first: 0x0000000000000008 },
4727    Node { op: Op::Sequence, flags: 0, a: 3019, b: 3, first: 0x0000000800000000 },
4728    Node { op: Op::Keyword, flags: 0, a: 494, b: 0, first: 0x0000001000000000 },
4729    Node { op: Op::Keyword, flags: 0, a: 494, b: 0, first: 0x0000001000000000 },
4730    Node { op: Op::Keyword, flags: 0, a: 510, b: 0, first: 0x0010000000000000 },
4731    Node { op: Op::Keyword, flags: 0, a: 511, b: 0, first: 0x0020000000000000 },
4732    Node { op: Op::Choice, flags: 0, a: 3022, b: 2, first: 0x0030000000000000 },
4733    Node { op: Op::Rule, flags: 0, a: 1079, b: 4691, first: 0x0030000000000000 },
4734    Node { op: Op::Keyword, flags: 0, a: 438, b: 0, first: 0x0000004000000000 },
4735    Node { op: Op::Rule, flags: 0, a: 559, b: 2569, first: 0x0000000180000000 },
4736    Node { op: Op::Sequence, flags: 0, a: 3024, b: 3, first: 0x0030000000000000 },
4737    Node { op: Op::Keyword, flags: 0, a: 100, b: 0, first: 0x0001000000000000 },
4738    Node { op: Op::Rule, flags: 0, a: 422, b: 1931, first: 0xffffffffffffffc1 },
4739    Node { op: Op::Keyword, flags: 0, a: 209, b: 0, first: 0x0000020000000000 },
4740    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
4741    Node { op: Op::Rule, flags: 0, a: 470, b: 2141, first: 0x01b833c1bfe01800 },
4742    Node { op: Op::Optional, flags: 2, a: 4700, b: 0, first: 0x01b833c1bfe01800 },
4743    Node { op: Op::Sequence, flags: 0, a: 3027, b: 3, first: 0x0000020000000000 },
4744    Node { op: Op::Keyword, flags: 0, a: 209, b: 0, first: 0x0000020000000000 },
4745    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
4746    Node { op: Op::Symbol, flags: 0, a: 41, b: 0, first: 0x0000000000000008 },
4747    Node { op: Op::Symbol, flags: 0, a: 42, b: 0, first: 0x0000000000000008 },
4748    Node { op: Op::Sequence, flags: 0, a: 3030, b: 3, first: 0x0000000000000008 },
4749    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
4750    Node { op: Op::Sequence, flags: 0, a: 3033, b: 3, first: 0x0000020000000000 },
4751    Node { op: Op::Keyword, flags: 0, a: 233, b: 0, first: 0x0000000000000080 },
4752    Node { op: Op::Rule, flags: 0, a: 899, b: 3912, first: 0x0000000000000004 },
4753    Node { op: Op::Rule, flags: 0, a: 1084, b: 4709, first: 0x0000020000000000 },
4754    Node { op: Op::Rule, flags: 0, a: 1083, b: 4702, first: 0x0000020000000000 },
4755    Node { op: Op::Rule, flags: 0, a: 1085, b: 4710, first: 0x0000000000000080 },
4756    Node { op: Op::Rule, flags: 0, a: 1081, b: 4696, first: 0x0001000000000000 },
4757    Node { op: Op::Rule, flags: 0, a: 1086, b: 4711, first: 0x0000000000000004 },
4758    Node { op: Op::Rule, flags: 0, a: 1082, b: 4697, first: 0xffffffffffffffc1 },
4759    Node { op: Op::Rule, flags: 0, a: 605, b: 2746, first: 0x0000000000000002 },
4760    Node { op: Op::Choice, flags: 0, a: 3036, b: 7, first: 0xffffffffffffffc7 },
4761];
4762
4763/// The child lists of every sequence and choice, contiguous per node.
4764#[rustfmt::skip]
4765pub static CHILDREN: [u32; 3043] = [
4766    0,
4767    1,
4768    3,
4769    5,
4770    7,
4771    8,
4772    10,
4773    12,
4774    14,
4775    17,
4776    19,
4777    20,
4778    22,
4779    23,
4780    24,
4781    26,
4782    27,
4783    29,
4784    32,
4785    34,
4786    35,
4787    37,
4788    38,
4789    39,
4790    42,
4791    44,
4792    45,
4793    46,
4794    48,
4795    49,
4796    50,
4797    52,
4798    54,
4799    55,
4800    56,
4801    57,
4802    58,
4803    59,
4804    61,
4805    62,
4806    63,
4807    64,
4808    65,
4809    67,
4810    69,
4811    70,
4812    71,
4813    73,
4814    74,
4815    76,
4816    78,
4817    79,
4818    80,
4819    82,
4820    83,
4821    85,
4822    86,
4823    87,
4824    88,
4825    89,
4826    90,
4827    91,
4828    92,
4829    93,
4830    94,
4831    95,
4832    96,
4833    97,
4834    98,
4835    105,
4836    104,
4837    104,
4838    108,
4839    110,
4840    100,
4841    102,
4842    103,
4843    111,
4844    114,
4845    115,
4846    117,
4847    119,
4848    121,
4849    123,
4850    124,
4851    125,
4852    128,
4853    129,
4854    127,
4855    130,
4856    132,
4857    133,
4858    135,
4859    137,
4860    139,
4861    141,
4862    143,
4863    146,
4864    147,
4865    151,
4866    152,
4867    155,
4868    156,
4869    157,
4870    158,
4871    159,
4872    160,
4873    161,
4874    162,
4875    163,
4876    164,
4877    165,
4878    166,
4879    167,
4880    168,
4881    169,
4882    170,
4883    171,
4884    172,
4885    173,
4886    174,
4887    175,
4888    176,
4889    177,
4890    178,
4891    179,
4892    180,
4893    181,
4894    182,
4895    183,
4896    184,
4897    185,
4898    186,
4899    187,
4900    188,
4901    189,
4902    190,
4903    191,
4904    192,
4905    193,
4906    195,
4907    196,
4908    198,
4909    199,
4910    202,
4911    203,
4912    205,
4913    206,
4914    207,
4915    210,
4916    211,
4917    215,
4918    214,
4919    216,
4920    213,
4921    217,
4922    219,
4923    220,
4924    225,
4925    224,
4926    226,
4927    223,
4928    227,
4929    229,
4930    230,
4931    231,
4932    233,
4933    236,
4934    238,
4935    239,
4936    241,
4937    242,
4938    243,
4939    245,
4940    246,
4941    248,
4942    249,
4943    252,
4944    254,
4945    256,
4946    258,
4947    259,
4948    261,
4949    263,
4950    266,
4951    265,
4952    265,
4953    269,
4954    271,
4955    273,
4956    275,
4957    277,
4958    279,
4959    280,
4960    282,
4961    283,
4962    286,
4963    287,
4964    289,
4965    291,
4966    293,
4967    295,
4968    296,
4969    299,
4970    301,
4971    303,
4972    305,
4973    306,
4974    307,
4975    308,
4976    310,
4977    311,
4978    312,
4979    313,
4980    315,
4981    317,
4982    320,
4983    321,
4984    323,
4985    324,
4986    325,
4987    329,
4988    330,
4989    331,
4990    332,
4991    338,
4992    337,
4993    337,
4994    341,
4995    343,
4996    345,
4997    344,
4998    346,
4999    334,
5000    336,
5001    348,
5002    350,
5003    353,
5004    355,
5005    356,
5006    361,
5007    360,
5008    360,
5009    364,
5010    366,
5011    359,
5012    368,
5013    369,
5014    371,
5015    372,
5016    374,
5017    375,
5018    377,
5019    378,
5020    380,
5021    381,
5022    383,
5023    384,
5024    386,
5025    387,
5026    390,
5027    389,
5028    391,
5029    394,
5030    393,
5031    395,
5032    397,
5033    398,
5034    399,
5035    403,
5036    404,
5037    406,
5038    408,
5039    410,
5040    412,
5041    413,
5042    415,
5043    416,
5044    417,
5045    418,
5046    420,
5047    421,
5048    422,
5049    426,
5050    425,
5051    427,
5052    424,
5053    428,
5054    431,
5055    432,
5056    434,
5057    435,
5058    439,
5059    440,
5060    442,
5061    445,
5062    446,
5063    448,
5064    450,
5065    451,
5066    453,
5067    454,
5068    455,
5069    457,
5070    459,
5071    460,
5072    462,
5073    463,
5074    464,
5075    465,
5076    467,
5077    469,
5078    470,
5079    473,
5080    474,
5081    476,
5082    477,
5083    478,
5084    480,
5085    482,
5086    484,
5087    486,
5088    488,
5089    490,
5090    492,
5091    493,
5092    495,
5093    497,
5094    498,
5095    500,
5096    502,
5097    504,
5098    487,
5099    491,
5100    496,
5101    501,
5102    505,
5103    506,
5104    510,
5105    509,
5106    511,
5107    508,
5108    512,
5109    516,
5110    517,
5111    519,
5112    523,
5113    522,
5114    522,
5115    526,
5116    528,
5117    530,
5118    529,
5119    531,
5120    521,
5121    532,
5122    534,
5123    537,
5124    539,
5125    540,
5126    542,
5127    545,
5128    547,
5129    548,
5130    550,
5131    551,
5132    552,
5133    554,
5134    555,
5135    557,
5136    558,
5137    559,
5138    561,
5139    562,
5140    564,
5141    565,
5142    568,
5143    567,
5144    567,
5145    571,
5146    573,
5147    575,
5148    574,
5149    576,
5150    578,
5151    579,
5152    580,
5153    581,
5154    582,
5155    583,
5156    586,
5157    587,
5158    589,
5159    590,
5160    592,
5161    595,
5162    597,
5163    598,
5164    603,
5165    602,
5166    602,
5167    606,
5168    608,
5169    610,
5170    609,
5171    611,
5172    613,
5173    614,
5174    616,
5175    617,
5176    618,
5177    620,
5178    621,
5179    622,
5180    623,
5181    624,
5182    625,
5183    626,
5184    627,
5185    630,
5186    632,
5187    634,
5188    636,
5189    639,
5190    642,
5191    641,
5192    641,
5193    645,
5194    647,
5195    649,
5196    648,
5197    650,
5198    653,
5199    652,
5200    652,
5201    656,
5202    658,
5203    662,
5204    663,
5205    664,
5206    665,
5207    666,
5208    672,
5209    671,
5210    673,
5211    669,
5212    670,
5213    674,
5214    681,
5215    682,
5216    684,
5217    685,
5218    686,
5219    687,
5220    688,
5221    689,
5222    690,
5223    691,
5224    692,
5225    693,
5226    694,
5227    698,
5228    699,
5229    700,
5230    701,
5231    702,
5232    703,
5233    707,
5234    708,
5235    711,
5236    712,
5237    713,
5238    714,
5239    716,
5240    717,
5241    719,
5242    721,
5243    723,
5244    726,
5245    728,
5246    730,
5247    731,
5248    733,
5249    734,
5250    735,
5251    736,
5252    737,
5253    738,
5254    740,
5255    742,
5256    744,
5257    745,
5258    746,
5259    749,
5260    750,
5261    754,
5262    753,
5263    755,
5264    757,
5265    758,
5266    759,
5267    760,
5268    762,
5269    763,
5270    769,
5271    770,
5272    772,
5273    773,
5274    774,
5275    775,
5276    776,
5277    777,
5278    779,
5279    780,
5280    781,
5281    782,
5282    783,
5283    785,
5284    786,
5285    787,
5286    790,
5287    789,
5288    789,
5289    793,
5290    795,
5291    797,
5292    796,
5293    798,
5294    800,
5295    801,
5296    805,
5297    806,
5298    810,
5299    809,
5300    811,
5301    812,
5302    813,
5303    814,
5304    816,
5305    818,
5306    819,
5307    821,
5308    823,
5309    824,
5310    825,
5311    827,
5312    830,
5313    831,
5314    832,
5315    836,
5316    835,
5317    837,
5318    838,
5319    840,
5320    842,
5321    844,
5322    846,
5323    847,
5324    848,
5325    850,
5326    851,
5327    852,
5328    854,
5329    856,
5330    857,
5331    858,
5332    859,
5333    861,
5334    863,
5335    879,
5336    878,
5337    878,
5338    882,
5339    884,
5340    886,
5341    885,
5342    887,
5343    866,
5344    867,
5345    869,
5346    871,
5347    872,
5348    873,
5349    875,
5350    877,
5351    889,
5352    891,
5353    893,
5354    900,
5355    899,
5356    899,
5357    903,
5358    905,
5359    895,
5360    897,
5361    898,
5362    906,
5363    909,
5364    911,
5365    912,
5366    914,
5367    916,
5368    918,
5369    920,
5370    921,
5371    924,
5372    926,
5373    927,
5374    930,
5375    932,
5376    934,
5377    936,
5378    937,
5379    939,
5380    940,
5381    941,
5382    942,
5383    943,
5384    944,
5385    945,
5386    946,
5387    947,
5388    950,
5389    952,
5390    954,
5391    955,
5392    956,
5393    958,
5394    961,
5395    962,
5396    965,
5397    964,
5398    964,
5399    968,
5400    970,
5401    973,
5402    974,
5403    976,
5404    978,
5405    979,
5406    980,
5407    982,
5408    984,
5409    986,
5410    987,
5411    988,
5412    989,
5413    990,
5414    991,
5415    993,
5416    995,
5417    996,
5418    998,
5419    999,
5420    1000,
5421    1003,
5422    1005,
5423    1006,
5424    1007,
5425    1008,
5426    1011,
5427    1013,
5428    1014,
5429    1016,
5430    1017,
5431    1019,
5432    1021,
5433    1022,
5434    1023,
5435    1028,
5436    1029,
5437    1033,
5438    1032,
5439    1032,
5440    1036,
5441    1038,
5442    1041,
5443    1040,
5444    1042,
5445    1031,
5446    1043,
5447    1047,
5448    1048,
5449    1050,
5450    1051,
5451    1052,
5452    1054,
5453    1055,
5454    1056,
5455    1058,
5456    1059,
5457    1060,
5458    1063,
5459    1065,
5460    1066,
5461    1068,
5462    1070,
5463    1072,
5464    1073,
5465    1075,
5466    1076,
5467    1077,
5468    1078,
5469    1080,
5470    1082,
5471    1084,
5472    1085,
5473    1086,
5474    1087,
5475    1088,
5476    1089,
5477    1095,
5478    1096,
5479    1098,
5480    1099,
5481    1101,
5482    1102,
5483    1103,
5484    1108,
5485    1109,
5486    1110,
5487    1111,
5488    1113,
5489    1115,
5490    1117,
5491    1121,
5492    1120,
5493    1120,
5494    1124,
5495    1126,
5496    1119,
5497    1127,
5498    1129,
5499    1131,
5500    1132,
5501    1134,
5502    1135,
5503    1138,
5504    1139,
5505    1142,
5506    1144,
5507    1147,
5508    1148,
5509    1150,
5510    1151,
5511    1153,
5512    1154,
5513    1156,
5514    1157,
5515    1158,
5516    1159,
5517    1160,
5518    1161,
5519    1164,
5520    1165,
5521    1167,
5522    1168,
5523    1169,
5524    1170,
5525    1172,
5526    1174,
5527    1176,
5528    1177,
5529    1180,
5530    1181,
5531    1184,
5532    1185,
5533    1188,
5534    1190,
5535    1194,
5536    1193,
5537    1193,
5538    1197,
5539    1199,
5540    1201,
5541    1200,
5542    1202,
5543    1192,
5544    1203,
5545    1205,
5546    1206,
5547    1208,
5548    1209,
5549    1211,
5550    1212,
5551    1214,
5552    1215,
5553    1217,
5554    1218,
5555    1220,
5556    1221,
5557    1223,
5558    1224,
5559    1226,
5560    1229,
5561    1232,
5562    1233,
5563    1235,
5564    1236,
5565    1242,
5566    1241,
5567    1241,
5568    1245,
5569    1247,
5570    1238,
5571    1240,
5572    1248,
5573    1250,
5574    1252,
5575    1254,
5576    1255,
5577    1257,
5578    1259,
5579    1260,
5580    1262,
5581    1263,
5582    1265,
5583    1267,
5584    1268,
5585    1270,
5586    1271,
5587    1272,
5588    1273,
5589    1274,
5590    1275,
5591    1276,
5592    1277,
5593    1278,
5594    1279,
5595    1281,
5596    1282,
5597    1283,
5598    1285,
5599    1286,
5600    1292,
5601    1291,
5602    1291,
5603    1295,
5604    1297,
5605    1288,
5606    1290,
5607    1298,
5608    1304,
5609    1303,
5610    1303,
5611    1307,
5612    1309,
5613    1300,
5614    1302,
5615    1310,
5616    1313,
5617    1314,
5618    1320,
5619    1319,
5620    1319,
5621    1323,
5622    1325,
5623    1316,
5624    1318,
5625    1326,
5626    1329,
5627    1330,
5628    1332,
5629    1333,
5630    1335,
5631    1337,
5632    1338,
5633    1344,
5634    1343,
5635    1343,
5636    1347,
5637    1349,
5638    1340,
5639    1342,
5640    1350,
5641    1352,
5642    1353,
5643    1355,
5644    1361,
5645    1360,
5646    1360,
5647    1364,
5648    1366,
5649    1357,
5650    1359,
5651    1367,
5652    1373,
5653    1372,
5654    1372,
5655    1376,
5656    1378,
5657    1369,
5658    1371,
5659    1379,
5660    1381,
5661    1383,
5662    1384,
5663    1385,
5664    1386,
5665    1392,
5666    1391,
5667    1391,
5668    1395,
5669    1397,
5670    1388,
5671    1390,
5672    1398,
5673    1400,
5674    1401,
5675    1403,
5676    1404,
5677    1407,
5678    1409,
5679    1412,
5680    1413,
5681    1417,
5682    1416,
5683    1418,
5684    1415,
5685    1419,
5686    1423,
5687    1422,
5688    1422,
5689    1426,
5690    1428,
5691    1431,
5692    1430,
5693    1432,
5694    1421,
5695    1433,
5696    1435,
5697    1437,
5698    1439,
5699    1441,
5700    1442,
5701    1444,
5702    1445,
5703    1448,
5704    1449,
5705    1453,
5706    1454,
5707    1456,
5708    1457,
5709    1460,
5710    1459,
5711    1459,
5712    1463,
5713    1465,
5714    1467,
5715    1466,
5716    1468,
5717    1471,
5718    1472,
5719    1474,
5720    1475,
5721    1477,
5722    1478,
5723    1480,
5724    1481,
5725    1484,
5726    1485,
5727    1487,
5728    1489,
5729    1491,
5730    1494,
5731    1493,
5732    1493,
5733    1497,
5734    1499,
5735    1501,
5736    1500,
5737    1502,
5738    1504,
5739    1505,
5740    1506,
5741    1507,
5742    1510,
5743    1512,
5744    1514,
5745    1515,
5746    1517,
5747    1518,
5748    1519,
5749    1520,
5750    1521,
5751    1522,
5752    1523,
5753    1524,
5754    1525,
5755    1526,
5756    1527,
5757    1528,
5758    1529,
5759    1530,
5760    1531,
5761    1532,
5762    1533,
5763    1534,
5764    1535,
5765    1536,
5766    1537,
5767    1539,
5768    1540,
5769    1542,
5770    1545,
5771    1547,
5772    1548,
5773    1551,
5774    1552,
5775    1554,
5776    1555,
5777    1557,
5778    1558,
5779    1560,
5780    1563,
5781    1564,
5782    1565,
5783    1567,
5784    1568,
5785    1569,
5786    1571,
5787    1573,
5788    1576,
5789    1575,
5790    1575,
5791    1579,
5792    1581,
5793    1583,
5794    1584,
5795    1586,
5796    1587,
5797    1590,
5798    1591,
5799    1592,
5800    1593,
5801    1595,
5802    1596,
5803    1597,
5804    1599,
5805    1600,
5806    1601,
5807    1603,
5808    1604,
5809    1605,
5810    1606,
5811    1607,
5812    1608,
5813    1609,
5814    1610,
5815    1611,
5816    1612,
5817    1613,
5818    1614,
5819    1615,
5820    1620,
5821    1619,
5822    1621,
5823    1618,
5824    1622,
5825    1626,
5826    1627,
5827    1628,
5828    1629,
5829    1632,
5830    1633,
5831    1634,
5832    1635,
5833    1636,
5834    1640,
5835    1641,
5836    1644,
5837    1645,
5838    1648,
5839    1647,
5840    1649,
5841    1651,
5842    1652,
5843    1656,
5844    1655,
5845    1657,
5846    1654,
5847    1659,
5848    1662,
5849    1663,
5850    1665,
5851    1666,
5852    1667,
5853    1669,
5854    1670,
5855    1671,
5856    1673,
5857    1674,
5858    1677,
5859    1679,
5860    1680,
5861    1681,
5862    1685,
5863    1686,
5864    1687,
5865    1692,
5866    1691,
5867    1693,
5868    1689,
5869    1690,
5870    1695,
5871    1696,
5872    1698,
5873    1699,
5874    1700,
5875    1702,
5876    1703,
5877    1705,
5878    1707,
5879    1708,
5880    1710,
5881    1711,
5882    1713,
5883    1714,
5884    1716,
5885    1717,
5886    1719,
5887    1720,
5888    1721,
5889    1726,
5890    1725,
5891    1725,
5892    1729,
5893    1731,
5894    1724,
5895    1732,
5896    1734,
5897    1735,
5898    1737,
5899    1738,
5900    1740,
5901    1742,
5902    1744,
5903    1745,
5904    1747,
5905    1748,
5906    1750,
5907    1751,
5908    1753,
5909    1755,
5910    1758,
5911    1759,
5912    1762,
5913    1761,
5914    1761,
5915    1765,
5916    1767,
5917    1769,
5918    1770,
5919    1772,
5920    1774,
5921    1776,
5922    1778,
5923    1781,
5924    1783,
5925    1785,
5926    1787,
5927    1790,
5928    1789,
5929    1791,
5930    1793,
5931    1794,
5932    1795,
5933    1801,
5934    1802,
5935    1805,
5936    1807,
5937    1813,
5938    1812,
5939    1814,
5940    1810,
5941    1811,
5942    1815,
5943    1817,
5944    1819,
5945    1820,
5946    1822,
5947    1824,
5948    1828,
5949    1827,
5950    1827,
5951    1831,
5952    1833,
5953    1835,
5954    1834,
5955    1836,
5956    1840,
5957    1839,
5958    1841,
5959    1843,
5960    1844,
5961    1848,
5962    1847,
5963    1849,
5964    1846,
5965    1851,
5966    1853,
5967    1854,
5968    1859,
5969    1860,
5970    1861,
5971    1863,
5972    1864,
5973    1865,
5974    1866,
5975    1868,
5976    1869,
5977    1872,
5978    1871,
5979    1871,
5980    1875,
5981    1877,
5982    1881,
5983    1880,
5984    1880,
5985    1884,
5986    1886,
5987    1889,
5988    1888,
5989    1890,
5990    1879,
5991    1891,
5992    1895,
5993    1896,
5994    1901,
5995    1900,
5996    1900,
5997    1904,
5998    1906,
5999    1908,
6000    1907,
6001    1909,
6002    1898,
6003    1899,
6004    1910,
6005    1913,
6006    1914,
6007    1917,
6008    1918,
6009    1920,
6010    1921,
6011    1922,
6012    1924,
6013    1925,
6014    1926,
6015    1928,
6016    1929,
6017    1932,
6018    1933,
6019    1934,
6020    1936,
6021    1937,
6022    1940,
6023    1939,
6024    1939,
6025    1943,
6026    1945,
6027    1947,
6028    1946,
6029    1948,
6030    1950,
6031    1951,
6032    1954,
6033    1955,
6034    1957,
6035    1958,
6036    1959,
6037    1961,
6038    1962,
6039    1964,
6040    1965,
6041    1967,
6042    1968,
6043    1969,
6044    1971,
6045    1972,
6046    1975,
6047    1976,
6048    1977,
6049    1980,
6050    1979,
6051    1979,
6052    1983,
6053    1985,
6054    1987,
6055    1986,
6056    1988,
6057    1991,
6058    1990,
6059    1992,
6060    1994,
6061    1995,
6062    1997,
6063    1998,
6064    2000,
6065    2002,
6066    2004,
6067    2007,
6068    2008,
6069    2010,
6070    2011,
6071    2012,
6072    2013,
6073    2017,
6074    2018,
6075    2021,
6076    2022,
6077    2023,
6078    2024,
6079    2025,
6080    2027,
6081    2028,
6082    2032,
6083    2034,
6084    2036,
6085    2037,
6086    2040,
6087    2041,
6088    2044,
6089    2043,
6090    2045,
6091    2047,
6092    2048,
6093    2050,
6094    2052,
6095    2054,
6096    2055,
6097    2056,
6098    2058,
6099    2059,
6100    2061,
6101    2062,
6102    2065,
6103    2066,
6104    2068,
6105    2069,
6106    2070,
6107    2072,
6108    2074,
6109    2075,
6110    2077,
6111    2079,
6112    2081,
6113    2083,
6114    2085,
6115    2086,
6116    2092,
6117    2091,
6118    2091,
6119    2095,
6120    2097,
6121    2099,
6122    2098,
6123    2100,
6124    2089,
6125    2090,
6126    2101,
6127    2103,
6128    2104,
6129    2107,
6130    2108,
6131    2110,
6132    2111,
6133    2113,
6134    2115,
6135    2119,
6136    2122,
6137    2124,
6138    2125,
6139    2127,
6140    2128,
6141    2129,
6142    2130,
6143    2131,
6144    2132,
6145    2133,
6146    2134,
6147    2135,
6148    2136,
6149    2137,
6150    2138,
6151    2139,
6152    2140,
6153    2142,
6154    2143,
6155    2145,
6156    2146,
6157    2148,
6158    2152,
6159    2151,
6160    2153,
6161    2150,
6162    2154,
6163    2156,
6164    2157,
6165    2158,
6166    2161,
6167    2162,
6168    2163,
6169    2164,
6170    2165,
6171    2166,
6172    2167,
6173    2169,
6174    2170,
6175    2171,
6176    2173,
6177    2174,
6178    2175,
6179    2177,
6180    2178,
6181    2179,
6182    2181,
6183    2182,
6184    2183,
6185    2185,
6186    2186,
6187    2187,
6188    2189,
6189    2190,
6190    2191,
6191    2193,
6192    2194,
6193    2195,
6194    2172,
6195    2176,
6196    2180,
6197    2184,
6198    2188,
6199    2192,
6200    2196,
6201    2198,
6202    2199,
6203    2201,
6204    2202,
6205    2204,
6206    2205,
6207    2207,
6208    2208,
6209    2211,
6210    2212,
6211    2213,
6212    2214,
6213    2215,
6214    2217,
6215    2220,
6216    2222,
6217    2224,
6218    2225,
6219    2226,
6220    2228,
6221    2229,
6222    2231,
6223    2234,
6224    2236,
6225    2238,
6226    2239,
6227    2241,
6228    2242,
6229    2243,
6230    2244,
6231    2248,
6232    2249,
6233    2250,
6234    2254,
6235    2255,
6236    2257,
6237    2256,
6238    2258,
6239    2252,
6240    2253,
6241    2259,
6242    2260,
6243    2261,
6244    2263,
6245    2264,
6246    2265,
6247    2266,
6248    2268,
6249    2269,
6250    2270,
6251    2272,
6252    2273,
6253    2274,
6254    2276,
6255    2277,
6256    2279,
6257    2280,
6258    2281,
6259    2282,
6260    2283,
6261    2284,
6262    2286,
6263    2287,
6264    2288,
6265    2291,
6266    2292,
6267    2293,
6268    2294,
6269    2295,
6270    2298,
6271    2300,
6272    2302,
6273    2305,
6274    2309,
6275    2308,
6276    2308,
6277    2312,
6278    2314,
6279    2307,
6280    2315,
6281    2316,
6282    2317,
6283    2320,
6284    2322,
6285    2324,
6286    2325,
6287    2327,
6288    2329,
6289    2330,
6290    2332,
6291    2333,
6292    2334,
6293    2335,
6294    2336,
6295    2337,
6296    2338,
6297    2339,
6298    2340,
6299    2341,
6300    2344,
6301    2345,
6302    2347,
6303    2349,
6304    2351,
6305    2352,
6306    2354,
6307    2355,
6308    2356,
6309    2357,
6310    2359,
6311    2361,
6312    2363,
6313    2364,
6314    2365,
6315    2371,
6316    2370,
6317    2370,
6318    2374,
6319    2376,
6320    2367,
6321    2368,
6322    2369,
6323    2377,
6324    2378,
6325    2379,
6326    2381,
6327    2382,
6328    2384,
6329    2385,
6330    2387,
6331    2388,
6332    2390,
6333    2391,
6334    2392,
6335    2394,
6336    2395,
6337    2396,
6338    2398,
6339    2399,
6340    2401,
6341    2403,
6342    2407,
6343    2410,
6344    2412,
6345    2413,
6346    2416,
6347    2417,
6348    2419,
6349    2422,
6350    2424,
6351    2425,
6352    2429,
6353    2428,
6354    2430,
6355    2431,
6356    2432,
6357    2433,
6358    2435,
6359    2436,
6360    2439,
6361    2440,
6362    2442,
6363    2443,
6364    2446,
6365    2445,
6366    2445,
6367    2449,
6368    2451,
6369    2453,
6370    2454,
6371    2458,
6372    2457,
6373    2457,
6374    2461,
6375    2463,
6376    2456,
6377    2465,
6378    2466,
6379    2468,
6380    2469,
6381    2470,
6382    2474,
6383    2473,
6384    2473,
6385    2477,
6386    2479,
6387    2481,
6388    2480,
6389    2482,
6390    2472,
6391    2484,
6392    2486,
6393    2487,
6394    2489,
6395    2490,
6396    2491,
6397    2493,
6398    2494,
6399    2495,
6400    2496,
6401    2497,
6402    2500,
6403    2501,
6404    2503,
6405    2504,
6406    2508,
6407    2509,
6408    2510,
6409    2511,
6410    2512,
6411    2513,
6412    2515,
6413    2517,
6414    2519,
6415    2520,
6416    2522,
6417    2523,
6418    2525,
6419    2526,
6420    2529,
6421    2531,
6422    2533,
6423    2535,
6424    2538,
6425    2537,
6426    2539,
6427    2542,
6428    2541,
6429    2541,
6430    2545,
6431    2547,
6432    2549,
6433    2550,
6434    2552,
6435    2553,
6436    2555,
6437    2556,
6438    2560,
6439    2561,
6440    2563,
6441    2564,
6442    2565,
6443    2567,
6444    2568,
6445    2570,
6446    2573,
6447    2575,
6448    2576,
6449    2579,
6450    2578,
6451    2578,
6452    2582,
6453    2584,
6454    2586,
6455    2585,
6456    2587,
6457    2590,
6458    2591,
6459    2592,
6460    2593,
6461    2594,
6462    2595,
6463    2597,
6464    2599,
6465    2600,
6466    2601,
6467    2603,
6468    2604,
6469    2606,
6470    2608,
6471    2611,
6472    2612,
6473    2613,
6474    2614,
6475    2615,
6476    2617,
6477    2619,
6478    2621,
6479    2626,
6480    2627,
6481    2628,
6482    2630,
6483    2631,
6484    2633,
6485    2634,
6486    2635,
6487    2636,
6488    2639,
6489    2640,
6490    2641,
6491    2643,
6492    2644,
6493    2646,
6494    2647,
6495    2648,
6496    2649,
6497    2651,
6498    2652,
6499    2655,
6500    2654,
6501    2656,
6502    2657,
6503    2659,
6504    2663,
6505    2664,
6506    2665,
6507    2667,
6508    2670,
6509    2671,
6510    2676,
6511    2677,
6512    2679,
6513    2680,
6514    2681,
6515    2683,
6516    2684,
6517    2686,
6518    2687,
6519    2695,
6520    2696,
6521    2697,
6522    2699,
6523    2701,
6524    2702,
6525    2703,
6526    2705,
6527    2706,
6528    2708,
6529    2709,
6530    2711,
6531    2712,
6532    2714,
6533    2715,
6534    2720,
6535    2722,
6536    2723,
6537    2726,
6538    2727,
6539    2728,
6540    2732,
6541    2731,
6542    2733,
6543    2730,
6544    2734,
6545    2737,
6546    2738,
6547    2740,
6548    2741,
6549    2743,
6550    2744,
6551    2747,
6552    2748,
6553    2750,
6554    2752,
6555    2754,
6556    2755,
6557    2757,
6558    2758,
6559    2760,
6560    2761,
6561    2763,
6562    2765,
6563    2767,
6564    2769,
6565    2771,
6566    2772,
6567    2775,
6568    2776,
6569    2778,
6570    2779,
6571    2781,
6572    2782,
6573    2784,
6574    2785,
6575    2787,
6576    2789,
6577    2791,
6578    2792,
6579    2793,
6580    2795,
6581    2796,
6582    2798,
6583    2799,
6584    2801,
6585    2802,
6586    2803,
6587    2804,
6588    2806,
6589    2808,
6590    2809,
6591    2816,
6592    2817,
6593    2823,
6594    2824,
6595    2826,
6596    2827,
6597    2829,
6598    2830,
6599    2832,
6600    2833,
6601    2835,
6602    2837,
6603    2839,
6604    2841,
6605    2842,
6606    2843,
6607    2845,
6608    2846,
6609    2848,
6610    2850,
6611    2852,
6612    2854,
6613    2857,
6614    2856,
6615    2856,
6616    2860,
6617    2862,
6618    2864,
6619    2865,
6620    2867,
6621    2868,
6622    2870,
6623    2873,
6624    2875,
6625    2876,
6626    2878,
6627    2879,
6628    2881,
6629    2882,
6630    2886,
6631    2885,
6632    2887,
6633    2884,
6634    2888,
6635    2891,
6636    2890,
6637    2890,
6638    2894,
6639    2896,
6640    2898,
6641    2899,
6642    2900,
6643    2901,
6644    2903,
6645    2905,
6646    2906,
6647    2907,
6648    2908,
6649    2911,
6650    2910,
6651    2912,
6652    2915,
6653    2914,
6654    2916,
6655    2921,
6656    2920,
6657    2922,
6658    2919,
6659    2923,
6660    2925,
6661    2927,
6662    2930,
6663    2929,
6664    2929,
6665    2933,
6666    2935,
6667    2938,
6668    2937,
6669    2939,
6670    2942,
6671    2941,
6672    2941,
6673    2945,
6674    2947,
6675    2949,
6676    2948,
6677    2950,
6678    2953,
6679    2952,
6680    2954,
6681    2956,
6682    2957,
6683    2958,
6684    2960,
6685    2961,
6686    2962,
6687    2963,
6688    2964,
6689    2966,
6690    2968,
6691    2973,
6692    2972,
6693    2972,
6694    2976,
6695    2978,
6696    2980,
6697    2979,
6698    2981,
6699    2970,
6700    2971,
6701    2982,
6702    2984,
6703    2985,
6704    2987,
6705    2988,
6706    2989,
6707    2990,
6708    2992,
6709    2995,
6710    2996,
6711    2997,
6712    3001,
6713    3000,
6714    3000,
6715    3004,
6716    3006,
6717    3011,
6718    3010,
6719    3012,
6720    3008,
6721    3009,
6722    3013,
6723    3016,
6724    3017,
6725    3018,
6726    3021,
6727    3022,
6728    3025,
6729    3026,
6730    3028,
6731    3029,
6732    3031,
6733    3033,
6734    3035,
6735    3038,
6736    3037,
6737    3039,
6738    3041,
6739    3042,
6740    3044,
6741    3045,
6742    3046,
6743    3048,
6744    3049,
6745    3052,
6746    3053,
6747    3054,
6748    3058,
6749    3057,
6750    3059,
6751    3056,
6752    3060,
6753    3062,
6754    3063,
6755    3068,
6756    3069,
6757    3070,
6758    3072,
6759    3073,
6760    3075,
6761    3077,
6762    3081,
6763    3080,
6764    3080,
6765    3084,
6766    3086,
6767    3088,
6768    3087,
6769    3089,
6770    3091,
6771    3092,
6772    3095,
6773    3096,
6774    3100,
6775    3101,
6776    3103,
6777    3104,
6778    3105,
6779    3106,
6780    3108,
6781    3109,
6782    3111,
6783    3112,
6784    3113,
6785    3115,
6786    3116,
6787    3119,
6788    3120,
6789    3125,
6790    3126,
6791    3127,
6792    3130,
6793    3131,
6794    3132,
6795    3136,
6796    3135,
6797    3137,
6798    3134,
6799    3138,
6800    3142,
6801    3143,
6802    3146,
6803    3148,
6804    3149,
6805    3151,
6806    3153,
6807    3156,
6808    3159,
6809    3160,
6810    3162,
6811    3163,
6812    3165,
6813    3166,
6814    3167,
6815    3169,
6816    3170,
6817    3172,
6818    3173,
6819    3175,
6820    3176,
6821    3178,
6822    3180,
6823    3181,
6824    3185,
6825    3186,
6826    3188,
6827    3189,
6828    3194,
6829    3195,
6830    3197,
6831    3199,
6832    3200,
6833    3202,
6834    3203,
6835    3204,
6836    3205,
6837    3207,
6838    3208,
6839    3209,
6840    3210,
6841    3214,
6842    3215,
6843    3216,
6844    3217,
6845    3219,
6846    3220,
6847    3221,
6848    3224,
6849    3226,
6850    3227,
6851    3228,
6852    3229,
6853    3231,
6854    3233,
6855    3235,
6856    3236,
6857    3239,
6858    3238,
6859    3238,
6860    3242,
6861    3244,
6862    3246,
6863    3245,
6864    3247,
6865    3249,
6866    3250,
6867    3252,
6868    3253,
6869    3255,
6870    3256,
6871    3257,
6872    3260,
6873    3262,
6874    3263,
6875    3264,
6876    3265,
6877    3267,
6878    3268,
6879    3270,
6880    3271,
6881    3272,
6882    3275,
6883    3274,
6884    3274,
6885    3278,
6886    3280,
6887    3282,
6888    3281,
6889    3283,
6890    3285,
6891    3286,
6892    3290,
6893    3289,
6894    3291,
6895    3288,
6896    3292,
6897    3294,
6898    3295,
6899    3297,
6900    3298,
6901    3299,
6902    3302,
6903    3301,
6904    3301,
6905    3305,
6906    3307,
6907    3309,
6908    3308,
6909    3310,
6910    3313,
6911    3314,
6912    3317,
6913    3318,
6914    3319,
6915    3324,
6916    3325,
6917    3328,
6918    3327,
6919    3327,
6920    3331,
6921    3333,
6922    3322,
6923    3323,
6924    3326,
6925    3334,
6926    3339,
6927    3340,
6928    3345,
6929    3346,
6930    3349,
6931    3350,
6932    3353,
6933    3354,
6934    3356,
6935    3357,
6936    3358,
6937    3360,
6938    3361,
6939    3362,
6940    3364,
6941    3365,
6942    3367,
6943    3368,
6944    3373,
6945    3375,
6946    3377,
6947    3378,
6948    3380,
6949    3382,
6950    3384,
6951    3386,
6952    3391,
6953    3390,
6954    3390,
6955    3394,
6956    3396,
6957    3399,
6958    3398,
6959    3400,
6960    3389,
6961    3401,
6962    3403,
6963    3404,
6964    3406,
6965    3407,
6966    3409,
6967    3411,
6968    3414,
6969    3415,
6970    3416,
6971    3417,
6972    3419,
6973    3421,
6974    3423,
6975    3424,
6976    3428,
6977    3427,
6978    3429,
6979    3426,
6980    3431,
6981    3436,
6982    3435,
6983    3437,
6984    3434,
6985    3438,
6986    3440,
6987    3443,
6988    3444,
6989    3447,
6990    3448,
6991    3446,
6992    3450,
6993    3454,
6994    3455,
6995    3457,
6996    3458,
6997    3463,
6998    3464,
6999    3466,
7000    3467,
7001    3469,
7002    3470,
7003    3472,
7004    3473,
7005    3475,
7006    3476,
7007    3478,
7008    3479,
7009    3481,
7010    3482,
7011    3483,
7012    3485,
7013    3486,
7014    3488,
7015    3489,
7016    3492,
7017    3493,
7018    3495,
7019    3496,
7020    3498,
7021    3500,
7022    3502,
7023    3504,
7024    3505,
7025    3507,
7026    3509,
7027    3513,
7028    3512,
7029    3514,
7030    3516,
7031    3519,
7032    3521,
7033    3522,
7034    3526,
7035    3527,
7036    3529,
7037    3531,
7038    3532,
7039    3533,
7040    3534,
7041    3535,
7042    3536,
7043    3540,
7044    3541,
7045    3543,
7046    3544,
7047    3546,
7048    3547,
7049    3549,
7050    3550,
7051    3551,
7052    3553,
7053    3554,
7054    3556,
7055    3558,
7056    3559,
7057    3561,
7058    3562,
7059    3564,
7060    3566,
7061    3567,
7062    3570,
7063    3571,
7064    3572,
7065    3573,
7066    3574,
7067    3575,
7068    3578,
7069    3579,
7070    3580,
7071    3582,
7072    3583,
7073    3585,
7074    3586,
7075    3587,
7076    3589,
7077    3591,
7078    3593,
7079    3594,
7080    3596,
7081    3598,
7082    3600,
7083    3601,
7084    3604,
7085    3605,
7086    3611,
7087    3610,
7088    3610,
7089    3614,
7090    3616,
7091    3618,
7092    3617,
7093    3619,
7094    3607,
7095    3608,
7096    3609,
7097    3620,
7098    3622,
7099    3623,
7100    3628,
7101    3629,
7102    3635,
7103    3634,
7104    3636,
7105    3631,
7106    3632,
7107    3633,
7108    3637,
7109    3639,
7110    3640,
7111    3642,
7112    3643,
7113    3644,
7114    3646,
7115    3647,
7116    3649,
7117    3650,
7118    3652,
7119    3653,
7120    3655,
7121    3657,
7122    3659,
7123    3662,
7124    3663,
7125    3667,
7126    3668,
7127    3669,
7128    3672,
7129    3673,
7130    3675,
7131    3677,
7132    3679,
7133    3682,
7134    3683,
7135    3685,
7136    3687,
7137    3688,
7138    3689,
7139    3691,
7140    3692,
7141    3696,
7142    3697,
7143    3698,
7144    3699,
7145    3701,
7146    3702,
7147    3703,
7148    3704,
7149    3706,
7150    3707,
7151    3708,
7152    3709,
7153    3711,
7154    3712,
7155    3714,
7156    3715,
7157    3716,
7158    3717,
7159    3718,
7160    3719,
7161    3720,
7162    3722,
7163    3724,
7164    3726,
7165    3728,
7166    3730,
7167    3732,
7168    3734,
7169    3736,
7170    3738,
7171    3741,
7172    3740,
7173    3742,
7174    3744,
7175    3745,
7176    3747,
7177    3748,
7178    3750,
7179    3751,
7180    3752,
7181    3753,
7182    3754,
7183    3755,
7184    3756,
7185    3757,
7186    3758,
7187    3759,
7188    3760,
7189    3761,
7190    3762,
7191    3763,
7192    3764,
7193    3765,
7194    3766,
7195    3767,
7196    3768,
7197    3769,
7198    3772,
7199    3773,
7200    3774,
7201    3775,
7202    3776,
7203    3781,
7204    3783,
7205    3785,
7206    3787,
7207    3788,
7208    3789,
7209    3792,
7210    3794,
7211    3799,
7212    3798,
7213    3798,
7214    3802,
7215    3804,
7216    3806,
7217    3805,
7218    3807,
7219    3796,
7220    3797,
7221    3808,
7222    3810,
7223    3811,
7224    3812,
7225    3813,
7226    3814,
7227    3815,
7228    3816,
7229    3817,
7230    3818,
7231    3819,
7232    3820,
7233    3821,
7234    3823,
7235    3824,
7236    3825,
7237    3826,
7238    3827,
7239    3828,
7240    3829,
7241    3830,
7242    3831,
7243    3833,
7244    3836,
7245    3839,
7246    3840,
7247    3842,
7248    3844,
7249    3845,
7250    3847,
7251    3848,
7252    3851,
7253    3852,
7254    3854,
7255    3856,
7256    3858,
7257    3864,
7258    3865,
7259    3867,
7260    3868,
7261    3870,
7262    3871,
7263    3872,
7264    3873,
7265    3874,
7266    3875,
7267    3876,
7268    3877,
7269    3878,
7270    3879,
7271    3880,
7272    3881,
7273    3882,
7274    3883,
7275    3884,
7276    3885,
7277    3886,
7278    3887,
7279    3888,
7280    3889,
7281    3890,
7282    3891,
7283    3892,
7284    3893,
7285    3894,
7286    3895,
7287    3896,
7288    3897,
7289    3898,
7290    3899,
7291    3900,
7292    3901,
7293    3902,
7294    3903,
7295    3904,
7296    3905,
7297    3907,
7298    3909,
7299    3915,
7300    3916,
7301    3918,
7302    3920,
7303    3924,
7304    3923,
7305    3923,
7306    3927,
7307    3929,
7308    3922,
7309    3931,
7310    3932,
7311    3934,
7312    3935,
7313    3936,
7314    3942,
7315    3944,
7316    3945,
7317    3949,
7318    3948,
7319    3950,
7320    3952,
7321    3953,
7322    3957,
7323    3956,
7324    3958,
7325    3955,
7326    3959,
7327    3962,
7328    3961,
7329    3961,
7330    3965,
7331    3967,
7332    3970,
7333    3971,
7334    3973,
7335    3975,
7336    3977,
7337    3978,
7338    3982,
7339    3983,
7340    3985,
7341    3986,
7342    3988,
7343    3990,
7344    3991,
7345    3993,
7346    3995,
7347    3997,
7348    3998,
7349    4000,
7350    4001,
7351    4002,
7352    4004,
7353    4006,
7354    4009,
7355    4008,
7356    4008,
7357    4012,
7358    4014,
7359    4017,
7360    4016,
7361    4018,
7362    4021,
7363    4022,
7364    4023,
7365    4025,
7366    4027,
7367    4030,
7368    4031,
7369    4034,
7370    4035,
7371    4036,
7372    4040,
7373    4039,
7374    4041,
7375    4038,
7376    4042,
7377    4044,
7378    4046,
7379    4047,
7380    4049,
7381    4051,
7382    4053,
7383    4054,
7384    4056,
7385    4059,
7386    4061,
7387    4062,
7388    4065,
7389    4066,
7390    4069,
7391    4071,
7392    4072,
7393    4074,
7394    4080,
7395    4079,
7396    4081,
7397    4076,
7398    4078,
7399    4082,
7400    4084,
7401    4086,
7402    4087,
7403    4089,
7404    4092,
7405    4091,
7406    4091,
7407    4095,
7408    4097,
7409    4099,
7410    4101,
7411    4103,
7412    4106,
7413    4107,
7414    4108,
7415    4111,
7416    4112,
7417    4115,
7418    4116,
7419    4118,
7420    4120,
7421    4122,
7422    4125,
7423    4126,
7424    4127,
7425    4132,
7426    4133,
7427    4134,
7428    4135,
7429    4138,
7430    4139,
7431    4141,
7432    4142,
7433    4143,
7434    4144,
7435    4149,
7436    4150,
7437    4147,
7438    4151,
7439    4153,
7440    4154,
7441    4155,
7442    4157,
7443    4158,
7444    4160,
7445    4161,
7446    4163,
7447    4164,
7448    4165,
7449    4169,
7450    4170,
7451    4171,
7452    4172,
7453    4175,
7454    4174,
7455    4174,
7456    4178,
7457    4180,
7458    4182,
7459    4183,
7460    4184,
7461    4185,
7462    4190,
7463    4191,
7464    4192,
7465    4194,
7466    4195,
7467    4198,
7468    4199,
7469    4200,
7470    4207,
7471    4206,
7472    4206,
7473    4210,
7474    4212,
7475    4203,
7476    4205,
7477    4213,
7478    4216,
7479    4217,
7480    4218,
7481    4222,
7482    4221,
7483    4223,
7484    4220,
7485    4224,
7486    4228,
7487    4229,
7488    4233,
7489    4235,
7490    4236,
7491    4241,
7492    4240,
7493    4242,
7494    4239,
7495    4243,
7496    4247,
7497    4246,
7498    4246,
7499    4250,
7500    4252,
7501    4254,
7502    4253,
7503    4255,
7504    4245,
7505    4256,
7506    4258,
7507    4261,
7508    4263,
7509    4264,
7510    4266,
7511    4267,
7512    4268,
7513    4271,
7514    4270,
7515    4270,
7516    4274,
7517    4276,
7518    4278,
7519    4277,
7520    4279,
7521    4281,
7522    4282,
7523    4285,
7524    4284,
7525    4284,
7526    4288,
7527    4290,
7528    4293,
7529    4292,
7530    4294,
7531    4299,
7532    4300,
7533    4301,
7534    4302,
7535    4303,
7536    4304,
7537    4305,
7538    4306,
7539    4307,
7540    4308,
7541    4309,
7542    4310,
7543    4312,
7544    4313,
7545    4320,
7546    4319,
7547    4321,
7548    4318,
7549    4322,
7550    4324,
7551    4325,
7552    4328,
7553    4327,
7554    4327,
7555    4331,
7556    4333,
7557    4335,
7558    4334,
7559    4336,
7560    4339,
7561    4340,
7562    4342,
7563    4343,
7564    4344,
7565    4345,
7566    4347,
7567    4350,
7568    4349,
7569    4351,
7570    4353,
7571    4354,
7572    4355,
7573    4359,
7574    4360,
7575    4361,
7576    4364,
7577    4365,
7578    4371,
7579    4370,
7580    4370,
7581    4374,
7582    4376,
7583    4378,
7584    4377,
7585    4379,
7586    4368,
7587    4369,
7588    4381,
7589    4383,
7590    4385,
7591    4387,
7592    4388,
7593    4391,
7594    4392,
7595    4394,
7596    4395,
7597    4397,
7598    4398,
7599    4400,
7600    4403,
7601    4405,
7602    4406,
7603    4407,
7604    4410,
7605    4409,
7606    4409,
7607    4413,
7608    4415,
7609    4418,
7610    4417,
7611    4417,
7612    4421,
7613    4423,
7614    4425,
7615    4424,
7616    4426,
7617    4427,
7618    4428,
7619    4429,
7620    4432,
7621    4433,
7622    4434,
7623    4435,
7624    4437,
7625    4439,
7626    4441,
7627    4443,
7628    4444,
7629    4446,
7630    4447,
7631    4449,
7632    4450,
7633    4451,
7634    4453,
7635    4454,
7636    4455,
7637    4458,
7638    4462,
7639    4461,
7640    4461,
7641    4465,
7642    4467,
7643    4469,
7644    4468,
7645    4470,
7646    4460,
7647    4471,
7648    4473,
7649    4474,
7650    4479,
7651    4478,
7652    4480,
7653    4476,
7654    4477,
7655    4481,
7656    4483,
7657    4484,
7658    4487,
7659    4489,
7660    4491,
7661    4493,
7662    4495,
7663    4496,
7664    4497,
7665    4498,
7666    4499,
7667    4501,
7668    4502,
7669    4505,
7670    4504,
7671    4504,
7672    4508,
7673    4510,
7674    4512,
7675    4511,
7676    4513,
7677    4515,
7678    4517,
7679    4519,
7680    4521,
7681    4522,
7682    4526,
7683    4525,
7684    4525,
7685    4529,
7686    4531,
7687    4524,
7688    4532,
7689    4535,
7690    4534,
7691    4534,
7692    4538,
7693    4540,
7694    4542,
7695    4541,
7696    4543,
7697    4546,
7698    4547,
7699    4549,
7700    4551,
7701    4552,
7702    4555,
7703    4554,
7704    4554,
7705    4558,
7706    4560,
7707    4565,
7708    4566,
7709    4569,
7710    4570,
7711    4572,
7712    4573,
7713    4577,
7714    4576,
7715    4576,
7716    4580,
7717    4582,
7718    4575,
7719    4583,
7720    4585,
7721    4586,
7722    4587,
7723    4589,
7724    4590,
7725    4592,
7726    4593,
7727    4594,
7728    4595,
7729    4597,
7730    4598,
7731    4599,
7732    4602,
7733    4604,
7734    4606,
7735    4609,
7736    4608,
7737    4610,
7738    4612,
7739    4613,
7740    4616,
7741    4617,
7742    4620,
7743    4619,
7744    4621,
7745    4626,
7746    4625,
7747    4625,
7748    4629,
7749    4631,
7750    4623,
7751    4624,
7752    4632,
7753    4638,
7754    4637,
7755    4637,
7756    4641,
7757    4643,
7758    4634,
7759    4636,
7760    4644,
7761    4646,
7762    4647,
7763    4649,
7764    4650,
7765    4652,
7766    4653,
7767    4655,
7768    4656,
7769    4657,
7770    4660,
7771    4661,
7772    4663,
7773    4664,
7774    4666,
7775    4667,
7776    4670,
7777    4672,
7778    4674,
7779    4675,
7780    4677,
7781    4678,
7782    4683,
7783    4682,
7784    4684,
7785    4680,
7786    4681,
7787    4685,
7788    4689,
7789    4690,
7790    4692,
7791    4693,
7792    4694,
7793    4698,
7794    4699,
7795    4701,
7796    4705,
7797    4704,
7798    4706,
7799    4703,
7800    4707,
7801    4708,
7802    4712,
7803    4713,
7804    4714,
7805    4715,
7806    4716,
7807    4717,
7808    4718,
7809];
7810
7811/// The rules, sorted by name so a lookup by name is a binary search and the table does
7812/// not depend on the order the generator happened to walk the grammar.
7813#[rustfmt::skip]
7814pub static RULES: [Rule; 1088] = [
7815    Rule { name: "AbortOrRollback", root: 2, memoized: false },
7816    Rule { name: "AddColumn", root: 9, memoized: false },
7817    Rule { name: "AddColumnEntry", root: 18, memoized: false },
7818    Rule { name: "AddConstraint", root: 21, memoized: false },
7819    Rule { name: "AddDefault", root: 25, memoized: false },
7820    Rule { name: "AddOrDropDefault", root: 28, memoized: false },
7821    Rule { name: "AdditiveExpression", root: 33, memoized: true },
7822    Rule { name: "AdditiveExpressionTail", root: 36, memoized: false },
7823    Rule { name: "AliasedExpression", root: 40, memoized: false },
7824    Rule { name: "AllKeyword", root: 41, memoized: false },
7825    Rule { name: "AlterColumn", root: 47, memoized: false },
7826    Rule { name: "AlterColumnEntry", root: 51, memoized: false },
7827    Rule { name: "AlterDatabaseStmt", root: 60, memoized: false },
7828    Rule { name: "AlterOptions", root: 66, memoized: false },
7829    Rule { name: "AlterSchemaStmt", root: 72, memoized: false },
7830    Rule { name: "AlterSequenceOptions", root: 75, memoized: false },
7831    Rule { name: "AlterSequenceStmt", root: 81, memoized: false },
7832    Rule { name: "AlterStatement", root: 84, memoized: false },
7833    Rule { name: "AlterTableOptions", root: 99, memoized: false },
7834    Rule { name: "AlterTableStmt", root: 112, memoized: false },
7835    Rule { name: "AlterType", root: 120, memoized: false },
7836    Rule { name: "AlterViewStmt", root: 126, memoized: false },
7837    Rule { name: "AlwaysOrByDefault", root: 131, memoized: false },
7838    Rule { name: "AnalyzeKeyword", root: 134, memoized: false },
7839    Rule { name: "AnalyzeStatement", root: 140, memoized: false },
7840    Rule { name: "AnalyzeTarget", root: 144, memoized: false },
7841    Rule { name: "AnalyzeVerbose", root: 145, memoized: false },
7842    Rule { name: "AndExpression", root: 148, memoized: false },
7843    Rule { name: "AnonymousParameter", root: 149, memoized: false },
7844    Rule { name: "AntiJoin", root: 150, memoized: false },
7845    Rule { name: "AnyAllOperator", root: 153, memoized: false },
7846    Rule { name: "AnyAllParsedOperator", root: 154, memoized: false },
7847    Rule { name: "AnyOp", root: 194, memoized: false },
7848    Rule { name: "AnyOrAll", root: 197, memoized: false },
7849    Rule { name: "ApproxOrExact", root: 200, memoized: false },
7850    Rule { name: "ArrayBoundedListExpression", root: 204, memoized: false },
7851    Rule { name: "ArrayBounds", root: 208, memoized: false },
7852    Rule { name: "ArrayKeyword", root: 209, memoized: false },
7853    Rule { name: "ArrayKeywordWithBounds", root: 212, memoized: false },
7854    Rule { name: "ArrayParensSelect", root: 218, memoized: false },
7855    Rule { name: "AscendingOrder", root: 221, memoized: false },
7856    Rule { name: "Asof", root: 222, memoized: false },
7857    Rule { name: "AtClause", root: 228, memoized: false },
7858    Rule { name: "AtSpecifier", root: 232, memoized: false },
7859    Rule { name: "AtTimeZoneExpression", root: 237, memoized: true },
7860    Rule { name: "AtTimeZoneExpressionTail", root: 240, memoized: false },
7861    Rule { name: "AtTimeZoneOperator", root: 244, memoized: false },
7862    Rule { name: "AtUnit", root: 247, memoized: false },
7863    Rule { name: "AttachAlias", root: 250, memoized: false },
7864    Rule { name: "AttachOptions", root: 251, memoized: false },
7865    Rule { name: "AttachStatement", root: 264, memoized: false },
7866    Rule { name: "BareNameList", root: 272, memoized: false },
7867    Rule { name: "BaseExpression", root: 276, memoized: true },
7868    Rule { name: "BaseTableAliasSet", root: 281, memoized: false },
7869    Rule { name: "BaseTableName", root: 284, memoized: false },
7870    Rule { name: "BaseTableRef", root: 294, memoized: false },
7871    Rule { name: "BaseTableSet", root: 297, memoized: false },
7872    Rule { name: "BaseWindowName", root: 298, memoized: false },
7873    Rule { name: "BeginTransaction", root: 304, memoized: false },
7874    Rule { name: "BetweenClause", root: 309, memoized: false },
7875    Rule { name: "BetweenFrameExtent", root: 314, memoized: false },
7876    Rule { name: "BetweenInLikeExpression", root: 318, memoized: false },
7877    Rule { name: "BetweenInLikeOp", root: 322, memoized: false },
7878    Rule { name: "BetweenInLikeOpExpression", root: 326, memoized: false },
7879    Rule { name: "BigintType", root: 327, memoized: false },
7880    Rule { name: "BinaryOption", root: 328, memoized: false },
7881    Rule { name: "BitOperator", root: 333, memoized: false },
7882    Rule { name: "BitType", root: 349, memoized: false },
7883    Rule { name: "BitwiseExpression", root: 354, memoized: true },
7884    Rule { name: "BitwiseExpressionTail", root: 357, memoized: false },
7885    Rule { name: "BooleanType", root: 358, memoized: false },
7886    Rule { name: "BoundedListExpression", root: 370, memoized: false },
7887    Rule { name: "ByName", root: 373, memoized: false },
7888    Rule { name: "ByNameOrPosition", root: 376, memoized: false },
7889    Rule { name: "BySource", root: 379, memoized: false },
7890    Rule { name: "BySourceOrTarget", root: 382, memoized: false },
7891    Rule { name: "ByTarget", root: 385, memoized: false },
7892    Rule { name: "CTEBody", root: 388, memoized: false },
7893    Rule { name: "CTEDMLBody", root: 392, memoized: false },
7894    Rule { name: "CTESelectBody", root: 396, memoized: false },
7895    Rule { name: "CallStatement", root: 400, memoized: false },
7896    Rule { name: "CascadeDropBehavior", root: 401, memoized: false },
7897    Rule { name: "CascadeKeyAction", root: 402, memoized: false },
7898    Rule { name: "CaseElse", root: 405, memoized: false },
7899    Rule { name: "CaseExpression", root: 414, memoized: false },
7900    Rule { name: "CaseWhenThen", root: 419, memoized: false },
7901    Rule { name: "CastArguments", root: 423, memoized: false },
7902    Rule { name: "CastExpression", root: 429, memoized: false },
7903    Rule { name: "CastKeyword", root: 430, memoized: false },
7904    Rule { name: "CastOperator", root: 433, memoized: false },
7905    Rule { name: "CastOrTryCast", root: 436, memoized: false },
7906    Rule { name: "CatalogName", root: 437, memoized: false },
7907    Rule { name: "CatalogNameAsUseTarget", root: 438, memoized: false },
7908    Rule { name: "CatalogQualification", root: 441, memoized: false },
7909    Rule { name: "CatalogReservedSchemaFunctionName", root: 447, memoized: false },
7910    Rule { name: "CatalogReservedSchemaIdentifier", root: 452, memoized: false },
7911    Rule { name: "CatalogReservedSchemaIndex", root: 456, memoized: false },
7912    Rule { name: "CatalogReservedSchemaTable", root: 461, memoized: false },
7913    Rule { name: "CatalogReservedSchemaTableColumnName", root: 466, memoized: false },
7914    Rule { name: "CatalogReservedSchemaTypeName", root: 471, memoized: false },
7915    Rule { name: "CatalogSessionTarget", root: 472, memoized: false },
7916    Rule { name: "CenturyKeyword", root: 475, memoized: false },
7917    Rule { name: "ChangeNullability", root: 479, memoized: false },
7918    Rule { name: "CharacterSimpleType", root: 483, memoized: false },
7919    Rule { name: "CharacterType", root: 507, memoized: false },
7920    Rule { name: "CheckConstraint", root: 513, memoized: false },
7921    Rule { name: "CheckpointForce", root: 514, memoized: false },
7922    Rule { name: "CheckpointStatement", root: 520, memoized: false },
7923    Rule { name: "CoalesceExpression", root: 533, memoized: false },
7924    Rule { name: "ColDefAndExpr", root: 538, memoized: false },
7925    Rule { name: "ColDefAndExpressionTail", root: 541, memoized: false },
7926    Rule { name: "ColDefOrExpr", root: 546, memoized: false },
7927    Rule { name: "ColDefOrExpressionTail", root: 549, memoized: false },
7928    Rule { name: "ColId", root: 553, memoized: true },
7929    Rule { name: "ColIdDot", root: 556, memoized: false },
7930    Rule { name: "ColIdExpression", root: 560, memoized: false },
7931    Rule { name: "ColIdOrString", root: 563, memoized: false },
7932    Rule { name: "ColIdType", root: 566, memoized: false },
7933    Rule { name: "ColIdTypeList", root: 577, memoized: false },
7934    Rule { name: "ColLabel", root: 584, memoized: false },
7935    Rule { name: "ColLabelIdentifier", root: 585, memoized: false },
7936    Rule { name: "ColLabelOrString", root: 588, memoized: false },
7937    Rule { name: "ColLabelParameter", root: 591, memoized: false },
7938    Rule { name: "CollateExpression", root: 596, memoized: true },
7939    Rule { name: "CollateExpressionTail", root: 599, memoized: false },
7940    Rule { name: "CollateOperator", root: 600, memoized: false },
7941    Rule { name: "CollationName", root: 601, memoized: false },
7942    Rule { name: "ColumnAliases", root: 612, memoized: false },
7943    Rule { name: "ColumnCollation", root: 615, memoized: false },
7944    Rule { name: "ColumnCompression", root: 619, memoized: false },
7945    Rule { name: "ColumnConstraint", root: 628, memoized: false },
7946    Rule { name: "ColumnDefaultExpr", root: 629, memoized: false },
7947    Rule { name: "ColumnDefinition", root: 640, memoized: false },
7948    Rule { name: "ColumnIdList", root: 651, memoized: false },
7949    Rule { name: "ColumnList", root: 659, memoized: false },
7950    Rule { name: "ColumnName", root: 660, memoized: false },
7951    Rule { name: "ColumnNameKeyword", root: 661, memoized: false },
7952    Rule { name: "ColumnReference", root: 667, memoized: true },
7953    Rule { name: "ColumnsExpression", root: 675, memoized: false },
7954    Rule { name: "CommentColumn", root: 676, memoized: false },
7955    Rule { name: "CommentDatabase", root: 677, memoized: false },
7956    Rule { name: "CommentFunction", root: 678, memoized: false },
7957    Rule { name: "CommentIndex", root: 679, memoized: false },
7958    Rule { name: "CommentMacro", root: 680, memoized: false },
7959    Rule { name: "CommentMacroTable", root: 683, memoized: false },
7960    Rule { name: "CommentOnType", root: 695, memoized: false },
7961    Rule { name: "CommentSchema", root: 696, memoized: false },
7962    Rule { name: "CommentSequence", root: 697, memoized: false },
7963    Rule { name: "CommentStatement", root: 704, memoized: false },
7964    Rule { name: "CommentTable", root: 705, memoized: false },
7965    Rule { name: "CommentType", root: 706, memoized: false },
7966    Rule { name: "CommentValue", root: 709, memoized: false },
7967    Rule { name: "CommentView", root: 710, memoized: false },
7968    Rule { name: "CommitAction", root: 715, memoized: false },
7969    Rule { name: "CommitOrEnd", root: 718, memoized: false },
7970    Rule { name: "CommitTransaction", root: 722, memoized: false },
7971    Rule { name: "ComparisonExpression", root: 727, memoized: true },
7972    Rule { name: "ComparisonExpressionTail", root: 732, memoized: false },
7973    Rule { name: "ComparisonOperator", root: 739, memoized: false },
7974    Rule { name: "ConnectStatement", root: 743, memoized: false },
7975    Rule { name: "ConstantLiteral", root: 747, memoized: false },
7976    Rule { name: "ConstraintName", root: 748, memoized: false },
7977    Rule { name: "ConstraintNameClause", root: 751, memoized: false },
7978    Rule { name: "CopyData", root: 752, memoized: false },
7979    Rule { name: "CopyDatabaseFlag", root: 756, memoized: false },
7980    Rule { name: "CopyFileName", root: 761, memoized: false },
7981    Rule { name: "CopyFileNameExpression", root: 764, memoized: false },
7982    Rule { name: "CopyFileNameIdentifier", root: 765, memoized: false },
7983    Rule { name: "CopyFileNameIdentifierColId", root: 766, memoized: false },
7984    Rule { name: "CopyFileNameStringLiteral", root: 767, memoized: false },
7985    Rule { name: "CopyFrom", root: 768, memoized: false },
7986    Rule { name: "CopyFromDatabase", root: 771, memoized: false },
7987    Rule { name: "CopyFromDatabaseWithFlag", root: 778, memoized: false },
7988    Rule { name: "CopyFromDatabaseWithoutFlag", root: 784, memoized: false },
7989    Rule { name: "CopyGenericOption", root: 788, memoized: false },
7990    Rule { name: "CopyGenericOptionList", root: 799, memoized: false },
7991    Rule { name: "CopyOptionList", root: 802, memoized: false },
7992    Rule { name: "CopyOptionName", root: 803, memoized: false },
7993    Rule { name: "CopyOptions", root: 807, memoized: false },
7994    Rule { name: "CopySchema", root: 808, memoized: false },
7995    Rule { name: "CopySelect", root: 817, memoized: false },
7996    Rule { name: "CopyStatement", root: 820, memoized: false },
7997    Rule { name: "CopyTable", root: 828, memoized: false },
7998    Rule { name: "CopyTo", root: 829, memoized: false },
7999    Rule { name: "CopyVariations", root: 833, memoized: false },
8000    Rule { name: "CreateColumnList", root: 843, memoized: false },
8001    Rule { name: "CreateExtensionRepositoryStmt", root: 855, memoized: false },
8002    Rule { name: "CreateExternalResourceStmt", root: 864, memoized: false },
8003    Rule { name: "CreateIndexStmt", root: 894, memoized: false },
8004    Rule { name: "CreateMacroStmt", root: 907, memoized: false },
8005    Rule { name: "CreateRecursive", root: 908, memoized: false },
8006    Rule { name: "CreateSchemaStmt", root: 913, memoized: false },
8007    Rule { name: "CreateSecretStmt", root: 922, memoized: false },
8008    Rule { name: "CreateSecure", root: 923, memoized: false },
8009    Rule { name: "CreateSequenceStmt", root: 931, memoized: false },
8010    Rule { name: "CreateStatement", root: 938, memoized: false },
8011    Rule { name: "CreateStatementVariation", root: 948, memoized: false },
8012    Rule { name: "CreateTableAs", root: 959, memoized: false },
8013    Rule { name: "CreateTableColumnDefinition", root: 960, memoized: false },
8014    Rule { name: "CreateTableColumnElement", root: 963, memoized: false },
8015    Rule { name: "CreateTableColumnList", root: 971, memoized: false },
8016    Rule { name: "CreateTableConstraint", root: 972, memoized: false },
8017    Rule { name: "CreateTableDefinition", root: 975, memoized: false },
8018    Rule { name: "CreateTableStmt", root: 983, memoized: false },
8019    Rule { name: "CreateTriggerStmt", root: 997, memoized: false },
8020    Rule { name: "CreateType", root: 1001, memoized: false },
8021    Rule { name: "CreateTypeFromType", root: 1002, memoized: false },
8022    Rule { name: "CreateTypeStmt", root: 1009, memoized: false },
8023    Rule { name: "CreateViewStmt", root: 1024, memoized: false },
8024    Rule { name: "CrossJoinPrefix", root: 1025, memoized: false },
8025    Rule { name: "CsvOption", root: 1026, memoized: false },
8026    Rule { name: "CubeKeyword", root: 1027, memoized: false },
8027    Rule { name: "CubeOrRollup", root: 1030, memoized: false },
8028    Rule { name: "CubeOrRollupClause", root: 1044, memoized: false },
8029    Rule { name: "Database", root: 1045, memoized: false },
8030    Rule { name: "DatabasePath", root: 1046, memoized: false },
8031    Rule { name: "DayKeyword", root: 1049, memoized: false },
8032    Rule { name: "DayToHour", root: 1053, memoized: false },
8033    Rule { name: "DayToMinute", root: 1057, memoized: false },
8034    Rule { name: "DayToSecond", root: 1061, memoized: false },
8035    Rule { name: "DeallocatePrepare", root: 1062, memoized: false },
8036    Rule { name: "DeallocateStatement", root: 1067, memoized: false },
8037    Rule { name: "DecType", root: 1071, memoized: false },
8038    Rule { name: "DecadeKeyword", root: 1074, memoized: false },
8039    Rule { name: "DecimalNumericType", root: 1079, memoized: false },
8040    Rule { name: "DecimalType", root: 1083, memoized: false },
8041    Rule { name: "DefArg", root: 1090, memoized: false },
8042    Rule { name: "DefArgKeyword", root: 1091, memoized: false },
8043    Rule { name: "DefArgNull", root: 1092, memoized: false },
8044    Rule { name: "DefArgStringLiteral", root: 1093, memoized: false },
8045    Rule { name: "DefaultExpression", root: 1094, memoized: false },
8046    Rule { name: "DefaultValue", root: 1097, memoized: false },
8047    Rule { name: "DefaultValues", root: 1100, memoized: false },
8048    Rule { name: "DeleteAction", root: 1104, memoized: false },
8049    Rule { name: "DeleteMatchClause", root: 1105, memoized: false },
8050    Rule { name: "DeleteRows", root: 1106, memoized: false },
8051    Rule { name: "DeleteStatement", root: 1118, memoized: false },
8052    Rule { name: "DeleteUsingClause", root: 1128, memoized: false },
8053    Rule { name: "DelimiterAsOption", root: 1133, memoized: false },
8054    Rule { name: "DescOrAsc", root: 1136, memoized: false },
8055    Rule { name: "DescRule", root: 1137, memoized: false },
8056    Rule { name: "DescendingOrder", root: 1140, memoized: false },
8057    Rule { name: "DescribeBaseTableName", root: 1141, memoized: false },
8058    Rule { name: "DescribeByName", root: 1145, memoized: false },
8059    Rule { name: "DescribeLongRule", root: 1146, memoized: false },
8060    Rule { name: "DescribeOrSummarize", root: 1149, memoized: false },
8061    Rule { name: "DescribeRule", root: 1152, memoized: false },
8062    Rule { name: "DescribeSelect", root: 1155, memoized: false },
8063    Rule { name: "DescribeStatement", root: 1162, memoized: false },
8064    Rule { name: "DescribeStringLiteral", root: 1163, memoized: false },
8065    Rule { name: "DescribeTarget", root: 1166, memoized: false },
8066    Rule { name: "DestroyExternalResourceStmt", root: 1171, memoized: false },
8067    Rule { name: "DetachStatement", root: 1178, memoized: false },
8068    Rule { name: "DisconnectStatement", root: 1179, memoized: false },
8069    Rule { name: "DistanceOrSimilarity", root: 1182, memoized: false },
8070    Rule { name: "DistinctAll", root: 1183, memoized: false },
8071    Rule { name: "DistinctClause", root: 1186, memoized: false },
8072    Rule { name: "DistinctKeyword", root: 1187, memoized: false },
8073    Rule { name: "DistinctOn", root: 1191, memoized: false },
8074    Rule { name: "DistinctOnTargets", root: 1204, memoized: false },
8075    Rule { name: "DistinctOrAll", root: 1207, memoized: false },
8076    Rule { name: "DoNothingMatchClause", root: 1210, memoized: false },
8077    Rule { name: "DotColLabel", root: 1213, memoized: false },
8078    Rule { name: "DotColumnOperator", root: 1216, memoized: false },
8079    Rule { name: "DotIdentifier", root: 1219, memoized: false },
8080    Rule { name: "DotMethodOperator", root: 1222, memoized: false },
8081    Rule { name: "DotOperator", root: 1225, memoized: false },
8082    Rule { name: "DottedIdentifier", root: 1230, memoized: false },
8083    Rule { name: "DottedIdentifierString", root: 1231, memoized: false },
8084    Rule { name: "DoubleType", root: 1234, memoized: false },
8085    Rule { name: "DropBehavior", root: 1237, memoized: false },
8086    Rule { name: "DropCollation", root: 1249, memoized: false },
8087    Rule { name: "DropColumn", root: 1258, memoized: false },
8088    Rule { name: "DropConstraint", root: 1266, memoized: false },
8089    Rule { name: "DropDefault", root: 1269, memoized: false },
8090    Rule { name: "DropEntries", root: 1280, memoized: false },
8091    Rule { name: "DropExtensionRepositoryStmt", root: 1287, memoized: false },
8092    Rule { name: "DropFunction", root: 1299, memoized: false },
8093    Rule { name: "DropIndex", root: 1311, memoized: false },
8094    Rule { name: "DropNullability", root: 1312, memoized: false },
8095    Rule { name: "DropOrSet", root: 1315, memoized: false },
8096    Rule { name: "DropSchema", root: 1327, memoized: false },
8097    Rule { name: "DropSecret", root: 1336, memoized: false },
8098    Rule { name: "DropSecretStorage", root: 1339, memoized: false },
8099    Rule { name: "DropSequence", root: 1351, memoized: false },
8100    Rule { name: "DropStatement", root: 1356, memoized: false },
8101    Rule { name: "DropTable", root: 1368, memoized: false },
8102    Rule { name: "DropTableFunction", root: 1380, memoized: false },
8103    Rule { name: "DropTrigger", root: 1387, memoized: false },
8104    Rule { name: "DropType", root: 1399, memoized: false },
8105    Rule { name: "EmptyGroupingItem", root: 1402, memoized: false },
8106    Rule { name: "EncodingOption", root: 1405, memoized: false },
8107    Rule { name: "EndOfInput", root: 1406, memoized: false },
8108    Rule { name: "EndSliceBound", root: 1410, memoized: false },
8109    Rule { name: "EndSliceMinus", root: 1411, memoized: false },
8110    Rule { name: "EndSliceValue", root: 1414, memoized: false },
8111    Rule { name: "EnumSelectType", root: 1420, memoized: false },
8112    Rule { name: "EnumStringLiteralList", root: 1434, memoized: false },
8113    Rule { name: "ErrorMatchClause", root: 1438, memoized: false },
8114    Rule { name: "EscapeAsOption", root: 1443, memoized: false },
8115    Rule { name: "EscapeClause", root: 1446, memoized: false },
8116    Rule { name: "ExcludeColumnName", root: 1447, memoized: false },
8117    Rule { name: "ExcludeCurrentRow", root: 1450, memoized: false },
8118    Rule { name: "ExcludeDottedName", root: 1451, memoized: false },
8119    Rule { name: "ExcludeGroup", root: 1452, memoized: false },
8120    Rule { name: "ExcludeList", root: 1455, memoized: false },
8121    Rule { name: "ExcludeName", root: 1458, memoized: false },
8122    Rule { name: "ExcludeNameList", root: 1469, memoized: false },
8123    Rule { name: "ExcludeNameSingle", root: 1470, memoized: false },
8124    Rule { name: "ExcludeNames", root: 1473, memoized: false },
8125    Rule { name: "ExcludeNoOthers", root: 1476, memoized: false },
8126    Rule { name: "ExcludeNulls", root: 1479, memoized: false },
8127    Rule { name: "ExcludeOrExcept", root: 1482, memoized: false },
8128    Rule { name: "ExcludeTies", root: 1483, memoized: false },
8129    Rule { name: "ExecuteStatement", root: 1488, memoized: false },
8130    Rule { name: "ExplainOption", root: 1492, memoized: false },
8131    Rule { name: "ExplainOptionList", root: 1503, memoized: false },
8132    Rule { name: "ExplainOptionName", root: 1508, memoized: false },
8133    Rule { name: "ExplainSelectStatement", root: 1509, memoized: false },
8134    Rule { name: "ExplainStatement", root: 1516, memoized: false },
8135    Rule { name: "ExplainableStatements", root: 1538, memoized: false },
8136    Rule { name: "ExponentOperator", root: 1541, memoized: false },
8137    Rule { name: "ExponentiationExpression", root: 1546, memoized: true },
8138    Rule { name: "ExponentiationExpressionTail", root: 1549, memoized: false },
8139    Rule { name: "ExportClause", root: 1550, memoized: false },
8140    Rule { name: "ExportSource", root: 1553, memoized: false },
8141    Rule { name: "ExportStatement", root: 1561, memoized: false },
8142    Rule { name: "Expression", root: 1562, memoized: true },
8143    Rule { name: "ExpressionAlias", root: 1566, memoized: false },
8144    Rule { name: "ExpressionAsCollabel", root: 1570, memoized: false },
8145    Rule { name: "ExpressionOptIdentifier", root: 1574, memoized: false },
8146    Rule { name: "ExpressionStatement", root: 1582, memoized: false },
8147    Rule { name: "ExtensionAlias", root: 1585, memoized: false },
8148    Rule { name: "ExtensionRepositoryStatement", root: 1588, memoized: false },
8149    Rule { name: "ExternalResourceCreationOptions", root: 1589, memoized: false },
8150    Rule { name: "ExternalResourceStatement", root: 1594, memoized: false },
8151    Rule { name: "ExtractArgument", root: 1598, memoized: false },
8152    Rule { name: "ExtractArguments", root: 1602, memoized: false },
8153    Rule { name: "ExtractDatePart", root: 1616, memoized: false },
8154    Rule { name: "ExtractDatePartArgument", root: 1617, memoized: false },
8155    Rule { name: "ExtractExpression", root: 1623, memoized: false },
8156    Rule { name: "ExtractIdentifierArgument", root: 1624, memoized: false },
8157    Rule { name: "ExtractStringArgument", root: 1625, memoized: false },
8158    Rule { name: "Factor", root: 1630, memoized: false },
8159    Rule { name: "FalseLiteral", root: 1631, memoized: false },
8160    Rule { name: "FetchClause", root: 1637, memoized: false },
8161    Rule { name: "FetchOnlyClause", root: 1638, memoized: false },
8162    Rule { name: "FetchValue", root: 1639, memoized: false },
8163    Rule { name: "FilterClause", root: 1642, memoized: false },
8164    Rule { name: "FilterClauseContents", root: 1646, memoized: false },
8165    Rule { name: "FilterClauseExpression", root: 1650, memoized: false },
8166    Rule { name: "FirstOrNext", root: 1653, memoized: false },
8167    Rule { name: "FloatType", root: 1660, memoized: false },
8168    Rule { name: "FollowingFrame", root: 1661, memoized: false },
8169    Rule { name: "ForEachClause", root: 1664, memoized: false },
8170    Rule { name: "ForEachRow", root: 1668, memoized: false },
8171    Rule { name: "ForEachStatement", root: 1672, memoized: false },
8172    Rule { name: "ForExpression", root: 1675, memoized: false },
8173    Rule { name: "ForceNotNull", root: 1676, memoized: false },
8174    Rule { name: "ForceNullOption", root: 1682, memoized: false },
8175    Rule { name: "ForceQuote", root: 1683, memoized: false },
8176    Rule { name: "ForceQuoteOption", root: 1688, memoized: false },
8177    Rule { name: "ForeignKeyConstraint", root: 1697, memoized: false },
8178    Rule { name: "FrameBound", root: 1701, memoized: false },
8179    Rule { name: "FrameClause", root: 1706, memoized: false },
8180    Rule { name: "FrameCurrentRow", root: 1709, memoized: false },
8181    Rule { name: "FrameExpression", root: 1712, memoized: false },
8182    Rule { name: "FrameExtent", root: 1715, memoized: false },
8183    Rule { name: "FrameUnbounded", root: 1718, memoized: false },
8184    Rule { name: "Framing", root: 1722, memoized: false },
8185    Rule { name: "FreezeOption", root: 1723, memoized: false },
8186    Rule { name: "FromClause", root: 1733, memoized: false },
8187    Rule { name: "FromExpression", root: 1736, memoized: false },
8188    Rule { name: "FromOrTo", root: 1739, memoized: false },
8189    Rule { name: "FromSelectClause", root: 1743, memoized: false },
8190    Rule { name: "FromSource", root: 1746, memoized: false },
8191    Rule { name: "FromSourceIdentifier", root: 1749, memoized: false },
8192    Rule { name: "FromSourceString", root: 1752, memoized: false },
8193    Rule { name: "FullJoin", root: 1756, memoized: false },
8194    Rule { name: "FuncNameKeyword", root: 1757, memoized: false },
8195    Rule { name: "FunctionArgument", root: 1760, memoized: false },
8196    Rule { name: "FunctionArgumentList", root: 1768, memoized: false },
8197    Rule { name: "FunctionExpression", root: 1779, memoized: true },
8198    Rule { name: "FunctionExpressionArgumentList", root: 1788, memoized: false },
8199    Rule { name: "FunctionExpressionArguments", root: 1792, memoized: false },
8200    Rule { name: "FunctionIdentifier", root: 1796, memoized: false },
8201    Rule { name: "FunctionKeyword", root: 1797, memoized: false },
8202    Rule { name: "FunctionName", root: 1798, memoized: false },
8203    Rule { name: "FunctionNameAsQualifiedName", root: 1799, memoized: false },
8204    Rule { name: "FunctionTypeFunction", root: 1800, memoized: false },
8205    Rule { name: "FunctionTypeMacro", root: 1803, memoized: false },
8206    Rule { name: "FunctionTypeMacroKeyword", root: 1804, memoized: false },
8207    Rule { name: "Generated", root: 1808, memoized: false },
8208    Rule { name: "GeneratedColumn", root: 1818, memoized: false },
8209    Rule { name: "GeneratedColumnType", root: 1821, memoized: false },
8210    Rule { name: "GenericCopyOption", root: 1825, memoized: false },
8211    Rule { name: "GenericCopyOptionExpression", root: 1826, memoized: false },
8212    Rule { name: "GenericCopyOptionList", root: 1837, memoized: false },
8213    Rule { name: "GenericCopyOptionOrderList", root: 1838, memoized: false },
8214    Rule { name: "GenericCopyOptionParenthesizedExpressionList", root: 1842, memoized: false },
8215    Rule { name: "GenericCopyOptionValue", root: 1845, memoized: false },
8216    Rule { name: "GeometryType", root: 1852, memoized: false },
8217    Rule { name: "GlobToken", root: 1855, memoized: false },
8218    Rule { name: "GlobalScope", root: 1856, memoized: false },
8219    Rule { name: "GroupByAll", root: 1857, memoized: false },
8220    Rule { name: "GroupByBaseExpression", root: 1858, memoized: false },
8221    Rule { name: "GroupByClause", root: 1862, memoized: false },
8222    Rule { name: "GroupByExpression", root: 1867, memoized: false },
8223    Rule { name: "GroupByExpressions", root: 1870, memoized: false },
8224    Rule { name: "GroupByList", root: 1878, memoized: false },
8225    Rule { name: "GroupingExpression", root: 1892, memoized: false },
8226    Rule { name: "GroupingIdKeyword", root: 1893, memoized: false },
8227    Rule { name: "GroupingKeyword", root: 1894, memoized: false },
8228    Rule { name: "GroupingOrGroupingId", root: 1897, memoized: false },
8229    Rule { name: "GroupingSetsClause", root: 1911, memoized: false },
8230    Rule { name: "GroupsFraming", root: 1912, memoized: false },
8231    Rule { name: "HavingClause", root: 1915, memoized: false },
8232    Rule { name: "HeaderOption", root: 1916, memoized: false },
8233    Rule { name: "HourKeyword", root: 1919, memoized: false },
8234    Rule { name: "HourToMinute", root: 1923, memoized: false },
8235    Rule { name: "HourToSecond", root: 1927, memoized: false },
8236    Rule { name: "ILikeToken", root: 1930, memoized: false },
8237    Rule { name: "Identifier", root: 1931, memoized: true },
8238    Rule { name: "IdentifierColId", root: 1935, memoized: false },
8239    Rule { name: "IdentifierDot", root: 1938, memoized: false },
8240    Rule { name: "IdentifierList", root: 1949, memoized: false },
8241    Rule { name: "IdentifierOrStringLiteral", root: 1952, memoized: false },
8242    Rule { name: "IdentifierWindowFrame", root: 1953, memoized: false },
8243    Rule { name: "IfExists", root: 1956, memoized: false },
8244    Rule { name: "IfNotExists", root: 1960, memoized: false },
8245    Rule { name: "IgnoreNulls", root: 1963, memoized: false },
8246    Rule { name: "IgnoreOrRespectNulls", root: 1966, memoized: false },
8247    Rule { name: "ImportStatement", root: 1970, memoized: false },
8248    Rule { name: "InClause", root: 1973, memoized: false },
8249    Rule { name: "InContainsExpression", root: 1974, memoized: false },
8250    Rule { name: "InExpression", root: 1978, memoized: false },
8251    Rule { name: "InExpressionList", root: 1989, memoized: false },
8252    Rule { name: "InSelectStatement", root: 1993, memoized: false },
8253    Rule { name: "IncludeNulls", root: 1996, memoized: false },
8254    Rule { name: "IncludeOrExcludeNulls", root: 1999, memoized: false },
8255    Rule { name: "IndexElement", root: 2005, memoized: false },
8256    Rule { name: "IndexName", root: 2006, memoized: false },
8257    Rule { name: "IndexType", root: 2009, memoized: false },
8258    Rule { name: "Indirection", root: 2014, memoized: false },
8259    Rule { name: "IndirectionList", root: 2016, memoized: false },
8260    Rule { name: "InetOperator", root: 2019, memoized: false },
8261    Rule { name: "InnerJoin", root: 2020, memoized: false },
8262    Rule { name: "InnerTableRef", root: 2026, memoized: false },
8263    Rule { name: "InsertAlias", root: 2029, memoized: false },
8264    Rule { name: "InsertByName", root: 2030, memoized: false },
8265    Rule { name: "InsertByNameOrPosition", root: 2035, memoized: false },
8266    Rule { name: "InsertByNameOrder", root: 2038, memoized: false },
8267    Rule { name: "InsertByPosition", root: 2039, memoized: false },
8268    Rule { name: "InsertByPositionOrder", root: 2042, memoized: false },
8269    Rule { name: "InsertColumnList", root: 2046, memoized: false },
8270    Rule { name: "InsertDefaultValues", root: 2049, memoized: false },
8271    Rule { name: "InsertMatchClause", root: 2053, memoized: false },
8272    Rule { name: "InsertMatchInfo", root: 2057, memoized: false },
8273    Rule { name: "InsertOrIgnore", root: 2060, memoized: false },
8274    Rule { name: "InsertOrReplace", root: 2063, memoized: false },
8275    Rule { name: "InsertStatement", root: 2080, memoized: false },
8276    Rule { name: "InsertTarget", root: 2084, memoized: false },
8277    Rule { name: "InsertValues", root: 2087, memoized: false },
8278    Rule { name: "InsertValuesList", root: 2102, memoized: false },
8279    Rule { name: "InstallAndLoad", root: 2105, memoized: false },
8280    Rule { name: "InstallStatement", root: 2116, memoized: false },
8281    Rule { name: "IntType", root: 2117, memoized: false },
8282    Rule { name: "IntegerType", root: 2118, memoized: false },
8283    Rule { name: "IntersectChain", root: 2123, memoized: false },
8284    Rule { name: "IntersectChainTail", root: 2126, memoized: false },
8285    Rule { name: "Interval", root: 2141, memoized: false },
8286    Rule { name: "IntervalInterval", root: 2144, memoized: false },
8287    Rule { name: "IntervalLiteral", root: 2149, memoized: false },
8288    Rule { name: "IntervalNumber", root: 2155, memoized: false },
8289    Rule { name: "IntervalParameter", root: 2159, memoized: false },
8290    Rule { name: "IntervalStringParameter", root: 2160, memoized: false },
8291    Rule { name: "IntervalToInterval", root: 2168, memoized: false },
8292    Rule { name: "IntervalToIntervalAsType", root: 2197, memoized: false },
8293    Rule { name: "IntervalType", root: 2200, memoized: false },
8294    Rule { name: "IntervalWithRangeSpecifier", root: 2203, memoized: false },
8295    Rule { name: "IntervalWithSimpleSpecifier", root: 2206, memoized: false },
8296    Rule { name: "IntervalWithSpecifier", root: 2209, memoized: false },
8297    Rule { name: "IntervalWithoutSpecifier", root: 2210, memoized: false },
8298    Rule { name: "IntoNameValues", root: 2216, memoized: false },
8299    Rule { name: "IsDistinctFromExpression", root: 2221, memoized: false },
8300    Rule { name: "IsDistinctFromOp", root: 2227, memoized: false },
8301    Rule { name: "IsDistinctFromTail", root: 2230, memoized: false },
8302    Rule { name: "IsExpression", root: 2235, memoized: true },
8303    Rule { name: "IsLiteral", root: 2240, memoized: false },
8304    Rule { name: "IsLiteralValue", root: 2245, memoized: false },
8305    Rule { name: "IsNull", root: 2246, memoized: false },
8306    Rule { name: "IsNullOperator", root: 2247, memoized: false },
8307    Rule { name: "IsTest", root: 2251, memoized: false },
8308    Rule { name: "JoinByClause", root: 2262, memoized: false },
8309    Rule { name: "JoinClause", root: 2267, memoized: false },
8310    Rule { name: "JoinOrPivot", root: 2271, memoized: false },
8311    Rule { name: "JoinPrefix", root: 2275, memoized: false },
8312    Rule { name: "JoinQualifier", root: 2278, memoized: false },
8313    Rule { name: "JoinType", root: 2285, memoized: false },
8314    Rule { name: "JoinWithoutOnClause", root: 2289, memoized: false },
8315    Rule { name: "JsonOperator", root: 2290, memoized: false },
8316    Rule { name: "KeyAction", root: 2296, memoized: false },
8317    Rule { name: "KeyActions", root: 2301, memoized: false },
8318    Rule { name: "LambdaArrowExpression", root: 2306, memoized: true },
8319    Rule { name: "LambdaExpression", root: 2318, memoized: false },
8320    Rule { name: "Lateral", root: 2319, memoized: false },
8321    Rule { name: "LeftJoin", root: 2323, memoized: false },
8322    Rule { name: "LikeClause", root: 2328, memoized: false },
8323    Rule { name: "LikeToken", root: 2331, memoized: false },
8324    Rule { name: "LikeVariations", root: 2342, memoized: false },
8325    Rule { name: "LimitAll", root: 2343, memoized: false },
8326    Rule { name: "LimitClause", root: 2346, memoized: false },
8327    Rule { name: "LimitExpression", root: 2350, memoized: false },
8328    Rule { name: "LimitLiteralPercent", root: 2353, memoized: false },
8329    Rule { name: "LimitOffset", root: 2358, memoized: false },
8330    Rule { name: "LimitOffsetClause", root: 2362, memoized: false },
8331    Rule { name: "LimitValue", root: 2366, memoized: false },
8332    Rule { name: "ListComprehensionExpression", root: 2383, memoized: false },
8333    Rule { name: "ListComprehensionFilter", root: 2386, memoized: false },
8334    Rule { name: "ListExpression", root: 2389, memoized: false },
8335    Rule { name: "ListOperator", root: 2393, memoized: false },
8336    Rule { name: "LiteralExpression", root: 2397, memoized: false },
8337    Rule { name: "LoadStatement", root: 2404, memoized: false },
8338    Rule { name: "LocalScope", root: 2405, memoized: false },
8339    Rule { name: "LocalSessionTarget", root: 2406, memoized: false },
8340    Rule { name: "LogicalAndExpression", root: 2411, memoized: true },
8341    Rule { name: "LogicalAndExpressionTail", root: 2414, memoized: false },
8342    Rule { name: "LogicalNotExpression", root: 2418, memoized: true },
8343    Rule { name: "LogicalOrExpression", root: 2423, memoized: true },
8344    Rule { name: "LogicalOrExpressionTail", root: 2426, memoized: false },
8345    Rule { name: "MacroDefinition", root: 2434, memoized: false },
8346    Rule { name: "MacroDefinitionBody", root: 2437, memoized: false },
8347    Rule { name: "MacroKeyword", root: 2438, memoized: false },
8348    Rule { name: "MacroOrFunction", root: 2441, memoized: false },
8349    Rule { name: "MacroParameter", root: 2444, memoized: false },
8350    Rule { name: "MacroParameters", root: 2452, memoized: false },
8351    Rule { name: "MapExpression", root: 2455, memoized: false },
8352    Rule { name: "MapStructExpression", root: 2467, memoized: false },
8353    Rule { name: "MapStructField", root: 2471, memoized: false },
8354    Rule { name: "MapType", root: 2485, memoized: false },
8355    Rule { name: "MatchedClause", root: 2492, memoized: false },
8356    Rule { name: "MatchedClauseAction", root: 2498, memoized: false },
8357    Rule { name: "Materialized", root: 2502, memoized: false },
8358    Rule { name: "MaterializedViewEntry", root: 2505, memoized: false },
8359    Rule { name: "MaxValue", root: 2506, memoized: false },
8360    Rule { name: "MergeIntoStatement", root: 2518, memoized: false },
8361    Rule { name: "MergeIntoUsingClause", root: 2521, memoized: false },
8362    Rule { name: "MergeMatch", root: 2524, memoized: false },
8363    Rule { name: "MethodExpression", root: 2527, memoized: false },
8364    Rule { name: "MethodExpressionArgumentList", root: 2536, memoized: false },
8365    Rule { name: "MethodExpressionArguments", root: 2540, memoized: false },
8366    Rule { name: "MethodFunctionArguments", root: 2548, memoized: false },
8367    Rule { name: "MicrosecondKeyword", root: 2551, memoized: false },
8368    Rule { name: "MillenniumKeyword", root: 2554, memoized: false },
8369    Rule { name: "MillisecondKeyword", root: 2557, memoized: false },
8370    Rule { name: "MinValue", root: 2558, memoized: false },
8371    Rule { name: "MinusPrefixOperator", root: 2559, memoized: false },
8372    Rule { name: "MinuteKeyword", root: 2562, memoized: false },
8373    Rule { name: "MinuteToSecond", root: 2566, memoized: false },
8374    Rule { name: "MonthKeyword", root: 2569, memoized: false },
8375    Rule { name: "MultiplicativeExpression", root: 2574, memoized: true },
8376    Rule { name: "MultiplicativeExpressionTail", root: 2577, memoized: false },
8377    Rule { name: "NameList", root: 2588, memoized: false },
8378    Rule { name: "NamedFunctionArgument", root: 2589, memoized: false },
8379    Rule { name: "NamedOtherOperator", root: 2596, memoized: false },
8380    Rule { name: "NamedParameter", root: 2602, memoized: false },
8381    Rule { name: "NamedParameterAssignment", root: 2605, memoized: false },
8382    Rule { name: "NaturalJoinPrefix", root: 2609, memoized: false },
8383    Rule { name: "NearestApprox", root: 2610, memoized: false },
8384    Rule { name: "NearestBareTableRef", root: 2616, memoized: false },
8385    Rule { name: "NearestBaseTableRef", root: 2622, memoized: false },
8386    Rule { name: "NearestDistance", root: 2623, memoized: false },
8387    Rule { name: "NearestExact", root: 2624, memoized: false },
8388    Rule { name: "NearestJoinAliased", root: 2637, memoized: false },
8389    Rule { name: "NearestJoinBare", root: 2650, memoized: false },
8390    Rule { name: "NearestJoinClause", root: 2653, memoized: false },
8391    Rule { name: "NearestParensTableRef", root: 2660, memoized: false },
8392    Rule { name: "NearestSimilarity", root: 2661, memoized: false },
8393    Rule { name: "NearestTableFunction", root: 2668, memoized: false },
8394    Rule { name: "NearestTableSubquery", root: 2672, memoized: false },
8395    Rule { name: "NearestValuesRef", root: 2673, memoized: false },
8396    Rule { name: "NestedColumnName", root: 2678, memoized: false },
8397    Rule { name: "NestedSchemaTableColumnName", root: 2685, memoized: false },
8398    Rule { name: "NoKeyAction", root: 2688, memoized: false },
8399    Rule { name: "NoneLiteral", root: 2689, memoized: false },
8400    Rule { name: "NotExpression", root: 2691, memoized: false },
8401    Rule { name: "NotILikeOp", root: 2692, memoized: false },
8402    Rule { name: "NotKeyword", root: 2693, memoized: false },
8403    Rule { name: "NotLikeOp", root: 2694, memoized: false },
8404    Rule { name: "NotMatchedClause", root: 2704, memoized: false },
8405    Rule { name: "NotNull", root: 2707, memoized: false },
8406    Rule { name: "NotNullColumnConstraint", root: 2710, memoized: false },
8407    Rule { name: "NotNullConstraint", root: 2713, memoized: false },
8408    Rule { name: "NotNullKeyword", root: 2716, memoized: false },
8409    Rule { name: "NotNullOperator", root: 2717, memoized: false },
8410    Rule { name: "NotRegexInsensitiveMatchOp", root: 2718, memoized: false },
8411    Rule { name: "NotSimilarToOp", root: 2719, memoized: false },
8412    Rule { name: "NullAsOption", root: 2724, memoized: false },
8413    Rule { name: "NullConstraint", root: 2725, memoized: false },
8414    Rule { name: "NullIfArguments", root: 2729, memoized: false },
8415    Rule { name: "NullIfExpression", root: 2735, memoized: false },
8416    Rule { name: "NullLiteral", root: 2736, memoized: false },
8417    Rule { name: "NullsFirst", root: 2739, memoized: false },
8418    Rule { name: "NullsFirstOrLast", root: 2742, memoized: false },
8419    Rule { name: "NullsLast", root: 2745, memoized: false },
8420    Rule { name: "NumberLiteral", root: 2746, memoized: false },
8421    Rule { name: "NumberedParameter", root: 2749, memoized: false },
8422    Rule { name: "NumericModType", root: 2753, memoized: false },
8423    Rule { name: "NumericType", root: 2756, memoized: false },
8424    Rule { name: "OffsetClause", root: 2759, memoized: false },
8425    Rule { name: "OffsetFetchClause", root: 2762, memoized: false },
8426    Rule { name: "OffsetLimitClause", root: 2766, memoized: false },
8427    Rule { name: "OffsetValue", root: 2770, memoized: false },
8428    Rule { name: "Oids", root: 2773, memoized: false },
8429    Rule { name: "OidsOption", root: 2774, memoized: false },
8430    Rule { name: "OnClause", root: 2777, memoized: false },
8431    Rule { name: "OnConflictAction", root: 2780, memoized: false },
8432    Rule { name: "OnConflictClause", root: 2786, memoized: false },
8433    Rule { name: "OnConflictExpressionTarget", root: 2790, memoized: false },
8434    Rule { name: "OnConflictIndexTarget", root: 2794, memoized: false },
8435    Rule { name: "OnConflictNothing", root: 2797, memoized: false },
8436    Rule { name: "OnConflictTarget", root: 2800, memoized: false },
8437    Rule { name: "OnConflictUpdate", root: 2807, memoized: false },
8438    Rule { name: "OperatorEqual", root: 2810, memoized: false },
8439    Rule { name: "OperatorGreaterThan", root: 2811, memoized: false },
8440    Rule { name: "OperatorGreaterThanEquals", root: 2812, memoized: false },
8441    Rule { name: "OperatorLessThan", root: 2813, memoized: false },
8442    Rule { name: "OperatorLessThanEquals", root: 2814, memoized: false },
8443    Rule { name: "OperatorLiteral", root: 2815, memoized: false },
8444    Rule { name: "OperatorNotEqual", root: 2818, memoized: false },
8445    Rule { name: "OptAnalyze", root: 2819, memoized: false },
8446    Rule { name: "OptFreeze", root: 2820, memoized: false },
8447    Rule { name: "OptFull", root: 2821, memoized: false },
8448    Rule { name: "OptVerbose", root: 2822, memoized: false },
8449    Rule { name: "OptionalParensNameList", root: 2825, memoized: false },
8450    Rule { name: "OptionalParensSimpleSelect", root: 2828, memoized: false },
8451    Rule { name: "OrAction", root: 2831, memoized: false },
8452    Rule { name: "OrReplace", root: 2834, memoized: false },
8453    Rule { name: "OrderByAll", root: 2840, memoized: false },
8454    Rule { name: "OrderByClause", root: 2844, memoized: false },
8455    Rule { name: "OrderByCopyOption", root: 2849, memoized: false },
8456    Rule { name: "OrderByExpression", root: 2855, memoized: false },
8457    Rule { name: "OrderByExpressionList", root: 2863, memoized: false },
8458    Rule { name: "OrderByExpressions", root: 2866, memoized: false },
8459    Rule { name: "OtherOperator", root: 2869, memoized: false },
8460    Rule { name: "OtherOperatorExpression", root: 2874, memoized: false },
8461    Rule { name: "OtherOperatorTail", root: 2877, memoized: false },
8462    Rule { name: "OverClause", root: 2880, memoized: false },
8463    Rule { name: "OverlayArguments", root: 2883, memoized: false },
8464    Rule { name: "OverlayExpression", root: 2889, memoized: false },
8465    Rule { name: "OverlayExpressionList", root: 2897, memoized: false },
8466    Rule { name: "OverlayParameters", root: 2904, memoized: false },
8467    Rule { name: "Parameter", root: 2909, memoized: false },
8468    Rule { name: "ParensExpression", root: 2913, memoized: true },
8469    Rule { name: "ParensIdentifier", root: 2917, memoized: false },
8470    Rule { name: "ParensTableRef", root: 2928, memoized: false },
8471    Rule { name: "ParenthesisExpression", root: 2940, memoized: true },
8472    Rule { name: "ParenthesizedNameList", root: 2951, memoized: false },
8473    Rule { name: "ParenthesizedPartitionByColumnList", root: 2955, memoized: false },
8474    Rule { name: "PartitionByColumnList", root: 2959, memoized: false },
8475    Rule { name: "PartitionByOption", root: 2965, memoized: false },
8476    Rule { name: "PartitionOptSortedOptions", root: 2969, memoized: false },
8477    Rule { name: "PartitionOptions", root: 2983, memoized: false },
8478    Rule { name: "PartitionSortedOptions", root: 2986, memoized: false },
8479    Rule { name: "PartitionedByCopyOption", root: 2993, memoized: false },
8480    Rule { name: "Persistent", root: 2994, memoized: false },
8481    Rule { name: "PivotColumnEntry", root: 2998, memoized: false },
8482    Rule { name: "PivotColumnExpression", root: 2999, memoized: false },
8483    Rule { name: "PivotColumnList", root: 3007, memoized: false },
8484    Rule { name: "PivotColumnSubquery", root: 3014, memoized: false },
8485    Rule { name: "PivotEnumTarget", root: 3015, memoized: false },
8486    Rule { name: "PivotGroupByList", root: 3019, memoized: false },
8487    Rule { name: "PivotHeader", root: 3020, memoized: false },
8488    Rule { name: "PivotKeyword", root: 3023, memoized: false },
8489    Rule { name: "PivotListTarget", root: 3024, memoized: false },
8490    Rule { name: "PivotOn", root: 3027, memoized: false },
8491    Rule { name: "PivotStatement", root: 3036, memoized: false },
8492    Rule { name: "PivotTargetList", root: 3040, memoized: false },
8493    Rule { name: "PivotUsing", root: 3043, memoized: false },
8494    Rule { name: "PivotValueList", root: 3047, memoized: false },
8495    Rule { name: "PivotValueTarget", root: 3050, memoized: false },
8496    Rule { name: "PlusPrefixOperator", root: 3051, memoized: false },
8497    Rule { name: "PositionArguments", root: 3055, memoized: false },
8498    Rule { name: "PositionExpression", root: 3061, memoized: false },
8499    Rule { name: "PositionalExpression", root: 3064, memoized: false },
8500    Rule { name: "PositionalFunctionArgument", root: 3065, memoized: false },
8501    Rule { name: "PositionalJoinPrefix", root: 3066, memoized: false },
8502    Rule { name: "PostfixOperator", root: 3067, memoized: false },
8503    Rule { name: "PragmaAssign", root: 3071, memoized: false },
8504    Rule { name: "PragmaAssignOrFunction", root: 3074, memoized: false },
8505    Rule { name: "PragmaFunction", root: 3078, memoized: false },
8506    Rule { name: "PragmaName", root: 3079, memoized: false },
8507    Rule { name: "PragmaParameters", root: 3090, memoized: false },
8508    Rule { name: "PragmaStatement", root: 3093, memoized: false },
8509    Rule { name: "PrecedingFrame", root: 3094, memoized: false },
8510    Rule { name: "PrecedingOrFollowing", root: 3097, memoized: false },
8511    Rule { name: "PrefixExpression", root: 3102, memoized: true },
8512    Rule { name: "PrefixOperator", root: 3107, memoized: false },
8513    Rule { name: "PrepareStatement", root: 3114, memoized: false },
8514    Rule { name: "PreserveOrDelete", root: 3117, memoized: false },
8515    Rule { name: "PreserveRows", root: 3118, memoized: false },
8516    Rule { name: "PrimaryKeyConstraint", root: 3121, memoized: false },
8517    Rule { name: "Program", root: 3124, memoized: false },
8518    Rule { name: "QualifiedIndexName", root: 3128, memoized: false },
8519    Rule { name: "QualifiedIndexNameString", root: 3129, memoized: false },
8520    Rule { name: "QualifiedName", root: 3133, memoized: false },
8521    Rule { name: "QualifiedOperator", root: 3139, memoized: false },
8522    Rule { name: "QualifiedOperatorContents", root: 3144, memoized: false },
8523    Rule { name: "QualifiedSequenceName", root: 3150, memoized: false },
8524    Rule { name: "QualifiedSimpleType", root: 3154, memoized: false },
8525    Rule { name: "QualifiedTableFunction", root: 3161, memoized: false },
8526    Rule { name: "QualifiedTableName", root: 3164, memoized: false },
8527    Rule { name: "QualifiedTypeName", root: 3168, memoized: false },
8528    Rule { name: "QualifyClause", root: 3171, memoized: false },
8529    Rule { name: "QuarterKeyword", root: 3174, memoized: false },
8530    Rule { name: "QuestionMarkNumberedParameter", root: 3177, memoized: false },
8531    Rule { name: "QuoteAsOption", root: 3182, memoized: false },
8532    Rule { name: "RangeFraming", root: 3183, memoized: false },
8533    Rule { name: "ReadOnly", root: 3184, memoized: false },
8534    Rule { name: "ReadOnlyOrReadWrite", root: 3187, memoized: false },
8535    Rule { name: "ReadOrWrite", root: 3190, memoized: false },
8536    Rule { name: "ReadWrite", root: 3191, memoized: false },
8537    Rule { name: "RealType", root: 3192, memoized: false },
8538    Rule { name: "Recursive", root: 3193, memoized: false },
8539    Rule { name: "ReferencingClause", root: 3198, memoized: false },
8540    Rule { name: "ReferencingItem", root: 3201, memoized: false },
8541    Rule { name: "ReferencingNewTableAs", root: 3206, memoized: false },
8542    Rule { name: "ReferencingOldTableAs", root: 3211, memoized: false },
8543    Rule { name: "RegexInsensitiveMatchToken", root: 3212, memoized: false },
8544    Rule { name: "RegexMatchToken", root: 3213, memoized: false },
8545    Rule { name: "RegisterExternalResourceStmt", root: 3222, memoized: false },
8546    Rule { name: "RegularJoinClause", root: 3230, memoized: false },
8547    Rule { name: "RelOption", root: 3234, memoized: false },
8548    Rule { name: "RelOptionArgumentOpt", root: 3237, memoized: false },
8549    Rule { name: "RelOptionList", root: 3248, memoized: false },
8550    Rule { name: "RelOptionName", root: 3251, memoized: false },
8551    Rule { name: "RelOptionOrOids", root: 3254, memoized: false },
8552    Rule { name: "RenameAlter", root: 3258, memoized: false },
8553    Rule { name: "RenameAlterSequenceOptions", root: 3259, memoized: false },
8554    Rule { name: "RenameColumn", root: 3266, memoized: false },
8555    Rule { name: "RenameEntries", root: 3269, memoized: false },
8556    Rule { name: "RenameEntry", root: 3273, memoized: false },
8557    Rule { name: "RenameEntryList", root: 3284, memoized: false },
8558    Rule { name: "RenameList", root: 3287, memoized: false },
8559    Rule { name: "RepeatableSample", root: 3293, memoized: false },
8560    Rule { name: "ReplaceEntries", root: 3296, memoized: false },
8561    Rule { name: "ReplaceEntry", root: 3300, memoized: false },
8562    Rule { name: "ReplaceEntryList", root: 3311, memoized: false },
8563    Rule { name: "ReplaceEntrySingle", root: 3312, memoized: false },
8564    Rule { name: "ReplaceList", root: 3315, memoized: false },
8565    Rule { name: "RepositoryPrefix", root: 3320, memoized: false },
8566    Rule { name: "RepositoryPublicKey", root: 3335, memoized: false },
8567    Rule { name: "ReservedColumnName", root: 3336, memoized: false },
8568    Rule { name: "ReservedFunctionName", root: 3337, memoized: false },
8569    Rule { name: "ReservedIdentifier", root: 3338, memoized: false },
8570    Rule { name: "ReservedIdentifierOrStringLiteral", root: 3341, memoized: false },
8571    Rule { name: "ReservedIndexName", root: 3342, memoized: false },
8572    Rule { name: "ReservedKeyword", root: 3343, memoized: false },
8573    Rule { name: "ReservedSchemaName", root: 3344, memoized: false },
8574    Rule { name: "ReservedSchemaQualification", root: 3347, memoized: false },
8575    Rule { name: "ReservedTableName", root: 3348, memoized: false },
8576    Rule { name: "ReservedTableQualification", root: 3351, memoized: false },
8577    Rule { name: "ReservedTypeName", root: 3352, memoized: false },
8578    Rule { name: "ResetOptions", root: 3355, memoized: false },
8579    Rule { name: "ResetPartitionedBy", root: 3359, memoized: false },
8580    Rule { name: "ResetSortedBy", root: 3363, memoized: false },
8581    Rule { name: "ResetStatement", root: 3366, memoized: false },
8582    Rule { name: "RespectNulls", root: 3369, memoized: false },
8583    Rule { name: "RestrictDropBehavior", root: 3370, memoized: false },
8584    Rule { name: "RestrictKeyAction", root: 3371, memoized: false },
8585    Rule { name: "ResultModifiers", root: 3376, memoized: false },
8586    Rule { name: "ReturningClause", root: 3379, memoized: false },
8587    Rule { name: "RightJoin", root: 3383, memoized: false },
8588    Rule { name: "RollbackTransaction", root: 3387, memoized: false },
8589    Rule { name: "RollupKeyword", root: 3388, memoized: false },
8590    Rule { name: "RowExpression", root: 3402, memoized: false },
8591    Rule { name: "RowOrRows", root: 3405, memoized: false },
8592    Rule { name: "RowOrStruct", root: 3408, memoized: false },
8593    Rule { name: "RowType", root: 3412, memoized: false },
8594    Rule { name: "RowsFraming", root: 3413, memoized: false },
8595    Rule { name: "SampleClause", root: 3418, memoized: false },
8596    Rule { name: "SampleCount", root: 3422, memoized: false },
8597    Rule { name: "SampleEntry", root: 3425, memoized: false },
8598    Rule { name: "SampleEntryCount", root: 3432, memoized: false },
8599    Rule { name: "SampleEntryFunction", root: 3441, memoized: false },
8600    Rule { name: "SampleFunction", root: 3442, memoized: false },
8601    Rule { name: "SamplePercentage", root: 3445, memoized: false },
8602    Rule { name: "SampleProperties", root: 3451, memoized: false },
8603    Rule { name: "SampleRows", root: 3452, memoized: false },
8604    Rule { name: "SampleSeed", root: 3453, memoized: false },
8605    Rule { name: "SampleUnit", root: 3456, memoized: false },
8606    Rule { name: "SampleValue", root: 3459, memoized: false },
8607    Rule { name: "ScalarMacroDefinition", root: 3460, memoized: false },
8608    Rule { name: "SchemaName", root: 3461, memoized: false },
8609    Rule { name: "SchemaNameAsUseTarget", root: 3462, memoized: false },
8610    Rule { name: "SchemaOrData", root: 3465, memoized: false },
8611    Rule { name: "SchemaQualification", root: 3468, memoized: false },
8612    Rule { name: "SchemaReservedFunctionName", root: 3471, memoized: false },
8613    Rule { name: "SchemaReservedIdentifierOrStringLiteral", root: 3474, memoized: false },
8614    Rule { name: "SchemaReservedIndex", root: 3477, memoized: false },
8615    Rule { name: "SchemaReservedTable", root: 3480, memoized: false },
8616    Rule { name: "SchemaReservedTableColumnName", root: 3484, memoized: false },
8617    Rule { name: "SchemaReservedTypeName", root: 3487, memoized: false },
8618    Rule { name: "SecondKeyword", root: 3490, memoized: false },
8619    Rule { name: "SecretName", root: 3491, memoized: false },
8620    Rule { name: "SecretStorageSpecifier", root: 3494, memoized: false },
8621    Rule { name: "SelectAtom", root: 3497, memoized: false },
8622    Rule { name: "SelectClause", root: 3503, memoized: false },
8623    Rule { name: "SelectFrom", root: 3506, memoized: false },
8624    Rule { name: "SelectFromClause", root: 3510, memoized: false },
8625    Rule { name: "SelectInsertValues", root: 3511, memoized: false },
8626    Rule { name: "SelectParens", root: 3515, memoized: false },
8627    Rule { name: "SelectSetOpChain", root: 3520, memoized: false },
8628    Rule { name: "SelectSetOpChainTail", root: 3523, memoized: false },
8629    Rule { name: "SelectStatement", root: 3524, memoized: false },
8630    Rule { name: "SelectStatementInternal", root: 3530, memoized: false },
8631    Rule { name: "SelectStatementType", root: 3537, memoized: false },
8632    Rule { name: "SemiJoin", root: 3538, memoized: false },
8633    Rule { name: "SeqCycle", root: 3539, memoized: false },
8634    Rule { name: "SeqMinOrMax", root: 3542, memoized: false },
8635    Rule { name: "SeqNoCycle", root: 3545, memoized: false },
8636    Rule { name: "SeqNoMinMax", root: 3548, memoized: false },
8637    Rule { name: "SeqOwnedBy", root: 3552, memoized: false },
8638    Rule { name: "SeqSetCycle", root: 3555, memoized: false },
8639    Rule { name: "SeqSetIncrement", root: 3560, memoized: false },
8640    Rule { name: "SeqSetMinMax", root: 3563, memoized: false },
8641    Rule { name: "SeqStartWith", root: 3568, memoized: false },
8642    Rule { name: "SequenceName", root: 3569, memoized: false },
8643    Rule { name: "SequenceOption", root: 3576, memoized: false },
8644    Rule { name: "SessionScope", root: 3577, memoized: false },
8645    Rule { name: "SessionTarget", root: 3581, memoized: false },
8646    Rule { name: "SetAssignment", root: 3584, memoized: false },
8647    Rule { name: "SetAssignmentOrTimeZone", root: 3588, memoized: false },
8648    Rule { name: "SetData", root: 3592, memoized: false },
8649    Rule { name: "SetDefaultKeyAction", root: 3595, memoized: false },
8650    Rule { name: "SetIntersectClause", root: 3599, memoized: false },
8651    Rule { name: "SetNullKeyAction", root: 3602, memoized: false },
8652    Rule { name: "SetNullability", root: 3603, memoized: false },
8653    Rule { name: "SetOptions", root: 3606, memoized: false },
8654    Rule { name: "SetPartitionedBy", root: 3621, memoized: false },
8655    Rule { name: "SetSchema", root: 3624, memoized: false },
8656    Rule { name: "SetSequenceOption", root: 3626, memoized: false },
8657    Rule { name: "SetSetting", root: 3630, memoized: false },
8658    Rule { name: "SetSortedBy", root: 3638, memoized: false },
8659    Rule { name: "SetStatement", root: 3641, memoized: false },
8660    Rule { name: "SetTimeZone", root: 3645, memoized: false },
8661    Rule { name: "SetVariable", root: 3648, memoized: false },
8662    Rule { name: "SetVariableOrSetting", root: 3651, memoized: false },
8663    Rule { name: "SetofType", root: 3654, memoized: false },
8664    Rule { name: "SetopClause", root: 3660, memoized: false },
8665    Rule { name: "SetopExcept", root: 3661, memoized: false },
8666    Rule { name: "SetopType", root: 3664, memoized: false },
8667    Rule { name: "SetopUnion", root: 3665, memoized: false },
8668    Rule { name: "SettingName", root: 3666, memoized: false },
8669    Rule { name: "SettingScope", root: 3670, memoized: false },
8670    Rule { name: "ShowAllModifier", root: 3671, memoized: false },
8671    Rule { name: "ShowAllTables", root: 3676, memoized: false },
8672    Rule { name: "ShowByName", root: 3680, memoized: false },
8673    Rule { name: "ShowDeprecatedQualifiedTableName", root: 3681, memoized: false },
8674    Rule { name: "ShowDeprecatedSelect", root: 3684, memoized: false },
8675    Rule { name: "ShowExternalResourcesStmt", root: 3690, memoized: false },
8676    Rule { name: "ShowOrDescribe", root: 3693, memoized: false },
8677    Rule { name: "ShowRule", root: 3694, memoized: false },
8678    Rule { name: "ShowSettingName", root: 3695, memoized: false },
8679    Rule { name: "ShowSpecialForm", root: 3700, memoized: false },
8680    Rule { name: "ShowTables", root: 3705, memoized: false },
8681    Rule { name: "ShowTarget", root: 3710, memoized: false },
8682    Rule { name: "SimilarToToken", root: 3713, memoized: false },
8683    Rule { name: "SimpleNumericType", root: 3721, memoized: false },
8684    Rule { name: "SimpleParameter", root: 3725, memoized: false },
8685    Rule { name: "SimpleSelect", root: 3739, memoized: false },
8686    Rule { name: "SimpleSelectParens", root: 3743, memoized: false },
8687    Rule { name: "SimpleType", root: 3746, memoized: false },
8688    Rule { name: "SingleArrowPair", root: 3749, memoized: false },
8689    Rule { name: "SingleExpression", root: 3770, memoized: true },
8690    Rule { name: "SingleFrameExtent", root: 3771, memoized: false },
8691    Rule { name: "SingleOption", root: 3777, memoized: false },
8692    Rule { name: "SinglePartitionByColumnList", root: 3778, memoized: false },
8693    Rule { name: "SingleRenameEntry", root: 3779, memoized: false },
8694    Rule { name: "SliceBound", root: 3786, memoized: false },
8695    Rule { name: "SliceExpression", root: 3790, memoized: false },
8696    Rule { name: "SmallintType", root: 3791, memoized: false },
8697    Rule { name: "SortedOptPartitionOptions", root: 3795, memoized: false },
8698    Rule { name: "SortedOptions", root: 3809, memoized: false },
8699    Rule { name: "SpecialFunctionExpression", root: 3822, memoized: false },
8700    Rule { name: "SpecializedOption", root: 3832, memoized: false },
8701    Rule { name: "SpecializedOptionList", root: 3837, memoized: false },
8702    Rule { name: "SpecializedOptionTail", root: 3841, memoized: false },
8703    Rule { name: "SquareBracketsArray", root: 3846, memoized: false },
8704    Rule { name: "StandardAssignment", root: 3849, memoized: false },
8705    Rule { name: "StarExpression", root: 3859, memoized: false },
8706    Rule { name: "StarPartitionByColumnList", root: 3860, memoized: false },
8707    Rule { name: "StarQualifierList", root: 3862, memoized: false },
8708    Rule { name: "StarSymbol", root: 3863, memoized: false },
8709    Rule { name: "StarSymbolColumnList", root: 3866, memoized: false },
8710    Rule { name: "StartOrBegin", root: 3869, memoized: false },
8711    Rule { name: "Statement", root: 3906, memoized: false },
8712    Rule { name: "StepSliceBound", root: 3910, memoized: false },
8713    Rule { name: "StoredGeneratedColumn", root: 3911, memoized: false },
8714    Rule { name: "StringLiteral", root: 3912, memoized: false },
8715    Rule { name: "StringLiteralIdentifier", root: 3913, memoized: false },
8716    Rule { name: "StringLiteralValue", root: 3914, memoized: false },
8717    Rule { name: "StringOperator", root: 3917, memoized: false },
8718    Rule { name: "StringSessionTarget", root: 3921, memoized: false },
8719    Rule { name: "StructExpression", root: 3933, memoized: false },
8720    Rule { name: "StructField", root: 3937, memoized: false },
8721    Rule { name: "SubqueryAll", root: 3938, memoized: false },
8722    Rule { name: "SubqueryAny", root: 3939, memoized: false },
8723    Rule { name: "SubqueryExists", root: 3940, memoized: false },
8724    Rule { name: "SubqueryExpression", root: 3946, memoized: false },
8725    Rule { name: "SubqueryNot", root: 3947, memoized: false },
8726    Rule { name: "SubqueryReference", root: 3951, memoized: false },
8727    Rule { name: "SubstringArguments", root: 3954, memoized: false },
8728    Rule { name: "SubstringExpression", root: 3960, memoized: false },
8729    Rule { name: "SubstringExpressionList", root: 3968, memoized: false },
8730    Rule { name: "SubstringFor", root: 3969, memoized: false },
8731    Rule { name: "SubstringFromFor", root: 3972, memoized: false },
8732    Rule { name: "SubstringFromOptionalFor", root: 3976, memoized: false },
8733    Rule { name: "SubstringParameters", root: 3979, memoized: false },
8734    Rule { name: "Summarize", root: 3980, memoized: false },
8735    Rule { name: "SummarizeRule", root: 3981, memoized: false },
8736    Rule { name: "TableAlias", root: 3984, memoized: false },
8737    Rule { name: "TableAliasAs", root: 3989, memoized: false },
8738    Rule { name: "TableAliasColon", root: 3992, memoized: false },
8739    Rule { name: "TableAliasWithoutAs", root: 3996, memoized: false },
8740    Rule { name: "TableFunction", root: 3999, memoized: false },
8741    Rule { name: "TableFunctionAliasColon", root: 4007, memoized: false },
8742    Rule { name: "TableFunctionArguments", root: 4019, memoized: false },
8743    Rule { name: "TableFunctionLateralOpt", root: 4028, memoized: false },
8744    Rule { name: "TableFunctionName", root: 4029, memoized: false },
8745    Rule { name: "TableMacroDefinition", root: 4032, memoized: false },
8746    Rule { name: "TableName", root: 4033, memoized: false },
8747    Rule { name: "TableOrView", root: 4037, memoized: false },
8748    Rule { name: "TablePivotClause", root: 4045, memoized: false },
8749    Rule { name: "TablePivotClauseBody", root: 4052, memoized: false },
8750    Rule { name: "TableQualification", root: 4055, memoized: false },
8751    Rule { name: "TableRef", root: 4060, memoized: false },
8752    Rule { name: "TableReservedColumnName", root: 4063, memoized: false },
8753    Rule { name: "TableSample", root: 4064, memoized: false },
8754    Rule { name: "TableStatement", root: 4067, memoized: false },
8755    Rule { name: "TableSubquery", root: 4075, memoized: false },
8756    Rule { name: "TableUnpivotClause", root: 4085, memoized: false },
8757    Rule { name: "TableUnpivotClauseBody", root: 4090, memoized: false },
8758    Rule { name: "TargetList", root: 4098, memoized: false },
8759    Rule { name: "TargetOptAlias", root: 4104, memoized: false },
8760    Rule { name: "TempPersistent", root: 4105, memoized: false },
8761    Rule { name: "Temporary", root: 4109, memoized: false },
8762    Rule { name: "TemporaryPersistent", root: 4110, memoized: false },
8763    Rule { name: "Term", root: 4113, memoized: false },
8764    Rule { name: "TildePrefixOperator", root: 4114, memoized: false },
8765    Rule { name: "TimeOrTimestamp", root: 4117, memoized: false },
8766    Rule { name: "TimeType", root: 4123, memoized: false },
8767    Rule { name: "TimeTypeId", root: 4124, memoized: false },
8768    Rule { name: "TimeZone", root: 4128, memoized: false },
8769    Rule { name: "TimestampAtUnit", root: 4129, memoized: false },
8770    Rule { name: "TimestampTypeId", root: 4130, memoized: false },
8771    Rule { name: "TopCheckConstraint", root: 4131, memoized: false },
8772    Rule { name: "TopForeignKeyConstraint", root: 4136, memoized: false },
8773    Rule { name: "TopLevelConstraint", root: 4140, memoized: false },
8774    Rule { name: "TopLevelConstraintList", root: 4145, memoized: false },
8775    Rule { name: "TopLevelStatement", root: 4152, memoized: false },
8776    Rule { name: "TopPrimaryKeyConstraint", root: 4156, memoized: false },
8777    Rule { name: "TopUniqueConstraint", root: 4159, memoized: false },
8778    Rule { name: "Transaction", root: 4162, memoized: false },
8779    Rule { name: "TransactionStatement", root: 4166, memoized: false },
8780    Rule { name: "TriggerAfter", root: 4167, memoized: false },
8781    Rule { name: "TriggerBefore", root: 4168, memoized: false },
8782    Rule { name: "TriggerBody", root: 4173, memoized: false },
8783    Rule { name: "TriggerColumnList", root: 4181, memoized: false },
8784    Rule { name: "TriggerEvent", root: 4186, memoized: false },
8785    Rule { name: "TriggerEventDelete", root: 4187, memoized: false },
8786    Rule { name: "TriggerEventInsert", root: 4188, memoized: false },
8787    Rule { name: "TriggerEventUpdate", root: 4189, memoized: false },
8788    Rule { name: "TriggerEventUpdateOf", root: 4193, memoized: false },
8789    Rule { name: "TriggerInsteadOf", root: 4196, memoized: false },
8790    Rule { name: "TriggerName", root: 4197, memoized: false },
8791    Rule { name: "TriggerTiming", root: 4201, memoized: false },
8792    Rule { name: "TrimArguments", root: 4214, memoized: false },
8793    Rule { name: "TrimBoth", root: 4215, memoized: false },
8794    Rule { name: "TrimDirection", root: 4219, memoized: false },
8795    Rule { name: "TrimExpression", root: 4225, memoized: false },
8796    Rule { name: "TrimLeading", root: 4226, memoized: false },
8797    Rule { name: "TrimSource", root: 4230, memoized: false },
8798    Rule { name: "TrimTrailing", root: 4231, memoized: false },
8799    Rule { name: "TrueLiteral", root: 4232, memoized: false },
8800    Rule { name: "TruncateStatement", root: 4237, memoized: false },
8801    Rule { name: "TryCastKeyword", root: 4238, memoized: false },
8802    Rule { name: "TryExpression", root: 4244, memoized: false },
8803    Rule { name: "TupleType", root: 4257, memoized: false },
8804    Rule { name: "Type", root: 4262, memoized: false },
8805    Rule { name: "TypeFuncKeyword", root: 4265, memoized: false },
8806    Rule { name: "TypeFuncName", root: 4269, memoized: false },
8807    Rule { name: "TypeList", root: 4280, memoized: false },
8808    Rule { name: "TypeLiteral", root: 4283, memoized: false },
8809    Rule { name: "TypeModifiers", root: 4295, memoized: false },
8810    Rule { name: "TypeName", root: 4296, memoized: false },
8811    Rule { name: "TypeNameAsQualifiedName", root: 4297, memoized: false },
8812    Rule { name: "TypeNameKeyword", root: 4298, memoized: false },
8813    Rule { name: "TypeVariations", root: 4311, memoized: false },
8814    Rule { name: "UnionType", root: 4314, memoized: false },
8815    Rule { name: "UniqueConstraint", root: 4315, memoized: false },
8816    Rule { name: "UniqueIndex", root: 4316, memoized: false },
8817    Rule { name: "UnknownLiteral", root: 4317, memoized: false },
8818    Rule { name: "UnpackExpression", root: 4323, memoized: false },
8819    Rule { name: "UnpivotHeader", root: 4326, memoized: false },
8820    Rule { name: "UnpivotHeaderList", root: 4337, memoized: false },
8821    Rule { name: "UnpivotHeaderSingle", root: 4338, memoized: false },
8822    Rule { name: "UnpivotKeyword", root: 4341, memoized: false },
8823    Rule { name: "UnpivotStatement", root: 4348, memoized: false },
8824    Rule { name: "UnpivotTargetList", root: 4352, memoized: false },
8825    Rule { name: "UnpivotValueList", root: 4356, memoized: false },
8826    Rule { name: "UnqualifiedBaseTableName", root: 4357, memoized: false },
8827    Rule { name: "UnreservedKeyword", root: 4358, memoized: false },
8828    Rule { name: "UpdateAction", root: 4362, memoized: false },
8829    Rule { name: "UpdateAlias", root: 4366, memoized: false },
8830    Rule { name: "UpdateByNameOrPosition", root: 4367, memoized: false },
8831    Rule { name: "UpdateExtensionsStatement", root: 4382, memoized: false },
8832    Rule { name: "UpdateMatchClause", root: 4386, memoized: false },
8833    Rule { name: "UpdateMatchInfo", root: 4389, memoized: false },
8834    Rule { name: "UpdateMatchSetAction", root: 4390, memoized: false },
8835    Rule { name: "UpdateMatchSetClause", root: 4393, memoized: false },
8836    Rule { name: "UpdateMatchSetInfo", root: 4396, memoized: false },
8837    Rule { name: "UpdateSetClause", root: 4399, memoized: false },
8838    Rule { name: "UpdateSetColumnTarget", root: 4404, memoized: false },
8839    Rule { name: "UpdateSetElement", root: 4408, memoized: false },
8840    Rule { name: "UpdateSetElementList", root: 4416, memoized: false },
8841    Rule { name: "UpdateSetTuple", root: 4430, memoized: false },
8842    Rule { name: "UpdateStatement", root: 4442, memoized: false },
8843    Rule { name: "UpdateTarget", root: 4445, memoized: false },
8844    Rule { name: "UseStatement", root: 4448, memoized: false },
8845    Rule { name: "UseTarget", root: 4452, memoized: false },
8846    Rule { name: "UseTargetCatalogSchema", root: 4459, memoized: false },
8847    Rule { name: "UsingClause", root: 4472, memoized: false },
8848    Rule { name: "UsingExpression", root: 4475, memoized: false },
8849    Rule { name: "UsingKey", root: 4482, memoized: false },
8850    Rule { name: "UsingSample", root: 4485, memoized: false },
8851    Rule { name: "VacuumLegacyOptions", root: 4494, memoized: false },
8852    Rule { name: "VacuumOption", root: 4500, memoized: false },
8853    Rule { name: "VacuumOptions", root: 4503, memoized: false },
8854    Rule { name: "VacuumParensOptions", root: 4514, memoized: false },
8855    Rule { name: "VacuumStatement", root: 4520, memoized: false },
8856    Rule { name: "ValueOrValues", root: 4523, memoized: false },
8857    Rule { name: "ValuesClause", root: 4533, memoized: false },
8858    Rule { name: "ValuesExpressions", root: 4544, memoized: false },
8859    Rule { name: "ValuesRef", root: 4550, memoized: false },
8860    Rule { name: "VariableAssign", root: 4553, memoized: false },
8861    Rule { name: "VariableList", root: 4561, memoized: false },
8862    Rule { name: "VariableScope", root: 4562, memoized: false },
8863    Rule { name: "VariantType", root: 4563, memoized: false },
8864    Rule { name: "VersionAtUnit", root: 4564, memoized: false },
8865    Rule { name: "VersionNumber", root: 4567, memoized: false },
8866    Rule { name: "VirtualGeneratedColumn", root: 4568, memoized: false },
8867    Rule { name: "WeekKeyword", root: 4571, memoized: false },
8868    Rule { name: "WhereClause", root: 4574, memoized: false },
8869    Rule { name: "WindowClause", root: 4584, memoized: false },
8870    Rule { name: "WindowDefinition", root: 4588, memoized: false },
8871    Rule { name: "WindowExcludeClause", root: 4591, memoized: false },
8872    Rule { name: "WindowExcludeElement", root: 4596, memoized: false },
8873    Rule { name: "WindowFrame", root: 4600, memoized: false },
8874    Rule { name: "WindowFrameContents", root: 4607, memoized: false },
8875    Rule { name: "WindowFrameContentsParens", root: 4611, memoized: false },
8876    Rule { name: "WindowFrameDefinition", root: 4614, memoized: false },
8877    Rule { name: "WindowFrameNameContents", root: 4618, memoized: false },
8878    Rule { name: "WindowFrameNameContentsParens", root: 4622, memoized: false },
8879    Rule { name: "WindowPartition", root: 4633, memoized: false },
8880    Rule { name: "WithClause", root: 4645, memoized: false },
8881    Rule { name: "WithData", root: 4648, memoized: false },
8882    Rule { name: "WithDataOnly", root: 4651, memoized: false },
8883    Rule { name: "WithList", root: 4654, memoized: false },
8884    Rule { name: "WithNoData", root: 4658, memoized: false },
8885    Rule { name: "WithOids", root: 4659, memoized: false },
8886    Rule { name: "WithOrWithout", root: 4662, memoized: false },
8887    Rule { name: "WithOrWithoutOids", root: 4665, memoized: false },
8888    Rule { name: "WithOrdinality", root: 4668, memoized: false },
8889    Rule { name: "WithRule", root: 4669, memoized: false },
8890    Rule { name: "WithStatement", root: 4679, memoized: false },
8891    Rule { name: "WithinGroupClause", root: 4686, memoized: false },
8892    Rule { name: "WithoutOids", root: 4687, memoized: false },
8893    Rule { name: "WithoutRule", root: 4688, memoized: false },
8894    Rule { name: "YearKeyword", root: 4691, memoized: false },
8895    Rule { name: "YearToMonth", root: 4695, memoized: false },
8896    Rule { name: "ZoneDefault", root: 4696, memoized: false },
8897    Rule { name: "ZoneIdentifier", root: 4697, memoized: false },
8898    Rule { name: "ZoneIntervalWithInterval", root: 4702, memoized: false },
8899    Rule { name: "ZoneIntervalWithPrecision", root: 4709, memoized: false },
8900    Rule { name: "ZoneLocal", root: 4710, memoized: false },
8901    Rule { name: "ZoneStringLiteral", root: 4711, memoized: false },
8902    Rule { name: "ZoneValue", root: 4719, memoized: false },
8903];
8904
8905/// Every literal that is not a word. Punctuation and operator spellings, matched against
8906/// the token text, which is the only place the matcher looks at the query again.
8907#[rustfmt::skip]
8908pub static SYMBOLS: [&str; 55] = [
8909    ",",
8910    "?",
8911    "!~~*",
8912    ">>=",
8913    "<<=",
8914    "->>",
8915    "!~~",
8916    "!~*",
8917    "~~*",
8918    "~~~",
8919    "~*",
8920    "!~",
8921    "^@",
8922    "||",
8923    "&&",
8924    "@>",
8925    "<@",
8926    "<=",
8927    ">=",
8928    "<>",
8929    "!=",
8930    "==",
8931    "<<",
8932    ">>",
8933    "//",
8934    "**",
8935    "->",
8936    "~~",
8937    "+",
8938    "-",
8939    "*",
8940    "/",
8941    "%",
8942    "^",
8943    "<",
8944    ">",
8945    "=",
8946    "&",
8947    "|",
8948    "~",
8949    "!",
8950    "(",
8951    ")",
8952    "=>",
8953    "[",
8954    "]",
8955    "::",
8956    ".",
8957    ":",
8958    "$",
8959    "{",
8960    "}",
8961    ":=",
8962    "#",
8963    ";",
8964];