MiniZinc grammar for tree-sitter
1#include <tree_sitter/parser.h>
2
3#if defined(__GNUC__) || defined(__clang__)
4#pragma GCC diagnostic push
5#pragma GCC diagnostic ignored "-Wmissing-field-initializers"
6#endif
7
8#define LANGUAGE_VERSION 13
9#define STATE_COUNT 308
10#define LARGE_STATE_COUNT 4
11#define SYMBOL_COUNT 133
12#define ALIAS_COUNT 1
13#define TOKEN_COUNT 85
14#define EXTERNAL_TOKEN_COUNT 0
15#define FIELD_COUNT 20
16#define MAX_ALIAS_SEQUENCE_LENGTH 9
17#define PRODUCTION_ID_COUNT 46
18
19enum {
20 sym_identifier = 1,
21 anon_sym_SEMI = 2,
22 anon_sym_annotation = 3,
23 anon_sym_EQ = 4,
24 anon_sym_constraint = 5,
25 anon_sym_COLON = 6,
26 anon_sym_enum = 7,
27 anon_sym_LBRACE = 8,
28 anon_sym_COMMA = 9,
29 anon_sym_RBRACE = 10,
30 anon_sym_function = 11,
31 anon_sym_solve = 12,
32 anon_sym_satisfy = 13,
33 anon_sym_maximize = 14,
34 anon_sym_minimize = 15,
35 anon_sym_include = 16,
36 anon_sym_output = 17,
37 anon_sym_predicate = 18,
38 anon_sym_test = 19,
39 anon_sym_COLON_COLON = 20,
40 anon_sym_LPAREN = 21,
41 anon_sym_RPAREN = 22,
42 anon_sym_LBRACK = 23,
43 anon_sym_PIPE = 24,
44 anon_sym_RBRACK = 25,
45 anon_sym_in = 26,
46 anon_sym_where = 27,
47 anon_sym_if = 28,
48 anon_sym_then = 29,
49 anon_sym_elseif = 30,
50 anon_sym_else = 31,
51 anon_sym_endif = 32,
52 anon_sym_LT_DASH_GT = 33,
53 anon_sym_DASH_GT = 34,
54 anon_sym_LT_DASH = 35,
55 anon_sym_BSLASH_SLASH = 36,
56 anon_sym_xor = 37,
57 anon_sym_SLASH_BSLASH = 38,
58 anon_sym_EQ_EQ = 39,
59 anon_sym_BANG_EQ = 40,
60 anon_sym_LT = 41,
61 anon_sym_LT_EQ = 42,
62 anon_sym_GT = 43,
63 anon_sym_GT_EQ = 44,
64 anon_sym_subset = 45,
65 anon_sym_superset = 46,
66 anon_sym_union = 47,
67 anon_sym_diff = 48,
68 anon_sym_symdiff = 49,
69 anon_sym_intersect = 50,
70 anon_sym_DOT_DOT = 51,
71 anon_sym_PLUS = 52,
72 anon_sym_DASH = 53,
73 anon_sym_PLUS_PLUS = 54,
74 anon_sym_STAR = 55,
75 anon_sym_SLASH = 56,
76 anon_sym_div = 57,
77 anon_sym_mod = 58,
78 anon_sym_CARET = 59,
79 anon_sym_let = 60,
80 anon_sym_not = 61,
81 anon_sym_ = 62,
82 anon_sym_DQUOTE = 63,
83 anon_sym_BSLASH_LPAREN = 64,
84 anon_sym_array = 65,
85 anon_sym_of = 66,
86 anon_sym_var = 67,
87 anon_sym_par = 68,
88 anon_sym_opt = 69,
89 anon_sym_set = 70,
90 anon_sym_ann = 71,
91 anon_sym_bool = 72,
92 anon_sym_float = 73,
93 anon_sym_int = 74,
94 anon_sym_string = 75,
95 sym_absent = 76,
96 anon_sym_true = 77,
97 anon_sym_false = 78,
98 sym_float_literal = 79,
99 sym_integer_literal = 80,
100 aux_sym_string_content_token1 = 81,
101 sym_escape_sequence = 82,
102 sym_line_comment = 83,
103 sym_block_comment = 84,
104 sym_source_file = 85,
105 sym__item = 86,
106 sym_annotation = 87,
107 sym_assignment = 88,
108 sym_constraint = 89,
109 sym_declaration = 90,
110 sym_enumeration = 91,
111 sym_function_item = 92,
112 sym_goal = 93,
113 sym_include = 94,
114 sym_output = 95,
115 sym_predicate = 96,
116 aux_sym__annotations = 97,
117 sym__parameters = 98,
118 sym__expression = 99,
119 sym_parenthesised_expression = 100,
120 sym_array_comprehension = 101,
121 sym_call = 102,
122 sym_generator_call = 103,
123 sym_generator = 104,
124 sym_if_then_else = 105,
125 sym_indexed_access = 106,
126 sym_infix_operator = 107,
127 sym_let_expression = 108,
128 sym_prefix_operator = 109,
129 sym_set_comprehension = 110,
130 sym_string_interpolation = 111,
131 sym__type = 112,
132 sym_array_type = 113,
133 sym_type_base = 114,
134 sym_primitive_type = 115,
135 sym__literal = 116,
136 sym_array_literal = 117,
137 sym_boolean_literal = 118,
138 sym_set_literal = 119,
139 sym_string_literal = 120,
140 sym_string_content = 121,
141 aux_sym_source_file_repeat1 = 122,
142 aux_sym_enumeration_repeat1 = 123,
143 aux_sym__parameters_repeat1 = 124,
144 aux_sym_array_comprehension_repeat1 = 125,
145 aux_sym_call_repeat1 = 126,
146 aux_sym_if_then_else_repeat1 = 127,
147 aux_sym_indexed_access_repeat1 = 128,
148 aux_sym_let_expression_repeat1 = 129,
149 aux_sym_string_interpolation_repeat1 = 130,
150 aux_sym_array_type_repeat1 = 131,
151 aux_sym_string_content_repeat1 = 132,
152 anon_alias_sym_content = 133,
153};
154
155static const char *ts_symbol_names[] = {
156 [ts_builtin_sym_end] = "end",
157 [sym_identifier] = "identifier",
158 [anon_sym_SEMI] = ";",
159 [anon_sym_annotation] = "annotation",
160 [anon_sym_EQ] = "=",
161 [anon_sym_constraint] = "constraint",
162 [anon_sym_COLON] = ":",
163 [anon_sym_enum] = "enum",
164 [anon_sym_LBRACE] = "{",
165 [anon_sym_COMMA] = ",",
166 [anon_sym_RBRACE] = "}",
167 [anon_sym_function] = "function",
168 [anon_sym_solve] = "solve",
169 [anon_sym_satisfy] = "satisfy",
170 [anon_sym_maximize] = "maximize",
171 [anon_sym_minimize] = "minimize",
172 [anon_sym_include] = "include",
173 [anon_sym_output] = "output",
174 [anon_sym_predicate] = "predicate",
175 [anon_sym_test] = "test",
176 [anon_sym_COLON_COLON] = "::",
177 [anon_sym_LPAREN] = "(",
178 [anon_sym_RPAREN] = ")",
179 [anon_sym_LBRACK] = "[",
180 [anon_sym_PIPE] = "|",
181 [anon_sym_RBRACK] = "]",
182 [anon_sym_in] = "in",
183 [anon_sym_where] = "where",
184 [anon_sym_if] = "if",
185 [anon_sym_then] = "then",
186 [anon_sym_elseif] = "elseif",
187 [anon_sym_else] = "else",
188 [anon_sym_endif] = "endif",
189 [anon_sym_LT_DASH_GT] = "<->",
190 [anon_sym_DASH_GT] = "->",
191 [anon_sym_LT_DASH] = "<-",
192 [anon_sym_BSLASH_SLASH] = "\\/",
193 [anon_sym_xor] = "xor",
194 [anon_sym_SLASH_BSLASH] = "/\\",
195 [anon_sym_EQ_EQ] = "==",
196 [anon_sym_BANG_EQ] = "!=",
197 [anon_sym_LT] = "<",
198 [anon_sym_LT_EQ] = "<=",
199 [anon_sym_GT] = ">",
200 [anon_sym_GT_EQ] = ">=",
201 [anon_sym_subset] = "subset",
202 [anon_sym_superset] = "superset",
203 [anon_sym_union] = "union",
204 [anon_sym_diff] = "diff",
205 [anon_sym_symdiff] = "symdiff",
206 [anon_sym_intersect] = "intersect",
207 [anon_sym_DOT_DOT] = "..",
208 [anon_sym_PLUS] = "+",
209 [anon_sym_DASH] = "-",
210 [anon_sym_PLUS_PLUS] = "++",
211 [anon_sym_STAR] = "*",
212 [anon_sym_SLASH] = "/",
213 [anon_sym_div] = "div",
214 [anon_sym_mod] = "mod",
215 [anon_sym_CARET] = "^",
216 [anon_sym_let] = "let",
217 [anon_sym_not] = "not",
218 [anon_sym_] = "¬",
219 [anon_sym_DQUOTE] = "\"",
220 [anon_sym_BSLASH_LPAREN] = "\\(",
221 [anon_sym_array] = "array",
222 [anon_sym_of] = "of",
223 [anon_sym_var] = "var",
224 [anon_sym_par] = "par",
225 [anon_sym_opt] = "opt",
226 [anon_sym_set] = "set",
227 [anon_sym_ann] = "ann",
228 [anon_sym_bool] = "bool",
229 [anon_sym_float] = "float",
230 [anon_sym_int] = "int",
231 [anon_sym_string] = "string",
232 [sym_absent] = "absent",
233 [anon_sym_true] = "true",
234 [anon_sym_false] = "false",
235 [sym_float_literal] = "float_literal",
236 [sym_integer_literal] = "integer_literal",
237 [aux_sym_string_content_token1] = "string_content_token1",
238 [sym_escape_sequence] = "escape_sequence",
239 [sym_line_comment] = "line_comment",
240 [sym_block_comment] = "block_comment",
241 [sym_source_file] = "source_file",
242 [sym__item] = "_item",
243 [sym_annotation] = "annotation",
244 [sym_assignment] = "assignment",
245 [sym_constraint] = "constraint",
246 [sym_declaration] = "declaration",
247 [sym_enumeration] = "enumeration",
248 [sym_function_item] = "function_item",
249 [sym_goal] = "goal",
250 [sym_include] = "include",
251 [sym_output] = "output",
252 [sym_predicate] = "predicate",
253 [aux_sym__annotations] = "_annotations",
254 [sym__parameters] = "_parameters",
255 [sym__expression] = "_expression",
256 [sym_parenthesised_expression] = "parenthesised_expression",
257 [sym_array_comprehension] = "array_comprehension",
258 [sym_call] = "call",
259 [sym_generator_call] = "generator_call",
260 [sym_generator] = "generator",
261 [sym_if_then_else] = "if_then_else",
262 [sym_indexed_access] = "indexed_access",
263 [sym_infix_operator] = "infix_operator",
264 [sym_let_expression] = "let_expression",
265 [sym_prefix_operator] = "prefix_operator",
266 [sym_set_comprehension] = "set_comprehension",
267 [sym_string_interpolation] = "string_interpolation",
268 [sym__type] = "_type",
269 [sym_array_type] = "array_type",
270 [sym_type_base] = "type_base",
271 [sym_primitive_type] = "primitive_type",
272 [sym__literal] = "_literal",
273 [sym_array_literal] = "array_literal",
274 [sym_boolean_literal] = "boolean_literal",
275 [sym_set_literal] = "set_literal",
276 [sym_string_literal] = "string_literal",
277 [sym_string_content] = "string_content",
278 [aux_sym_source_file_repeat1] = "source_file_repeat1",
279 [aux_sym_enumeration_repeat1] = "enumeration_repeat1",
280 [aux_sym__parameters_repeat1] = "_parameters_repeat1",
281 [aux_sym_array_comprehension_repeat1] = "array_comprehension_repeat1",
282 [aux_sym_call_repeat1] = "call_repeat1",
283 [aux_sym_if_then_else_repeat1] = "if_then_else_repeat1",
284 [aux_sym_indexed_access_repeat1] = "indexed_access_repeat1",
285 [aux_sym_let_expression_repeat1] = "let_expression_repeat1",
286 [aux_sym_string_interpolation_repeat1] = "string_interpolation_repeat1",
287 [aux_sym_array_type_repeat1] = "array_type_repeat1",
288 [aux_sym_string_content_repeat1] = "string_content_repeat1",
289 [anon_alias_sym_content] = "content",
290};
291
292static TSSymbol ts_symbol_map[] = {
293 [ts_builtin_sym_end] = ts_builtin_sym_end,
294 [sym_identifier] = sym_identifier,
295 [anon_sym_SEMI] = anon_sym_SEMI,
296 [anon_sym_annotation] = anon_sym_annotation,
297 [anon_sym_EQ] = anon_sym_EQ,
298 [anon_sym_constraint] = anon_sym_constraint,
299 [anon_sym_COLON] = anon_sym_COLON,
300 [anon_sym_enum] = anon_sym_enum,
301 [anon_sym_LBRACE] = anon_sym_LBRACE,
302 [anon_sym_COMMA] = anon_sym_COMMA,
303 [anon_sym_RBRACE] = anon_sym_RBRACE,
304 [anon_sym_function] = anon_sym_function,
305 [anon_sym_solve] = anon_sym_solve,
306 [anon_sym_satisfy] = anon_sym_satisfy,
307 [anon_sym_maximize] = anon_sym_maximize,
308 [anon_sym_minimize] = anon_sym_minimize,
309 [anon_sym_include] = anon_sym_include,
310 [anon_sym_output] = anon_sym_output,
311 [anon_sym_predicate] = anon_sym_predicate,
312 [anon_sym_test] = anon_sym_test,
313 [anon_sym_COLON_COLON] = anon_sym_COLON_COLON,
314 [anon_sym_LPAREN] = anon_sym_LPAREN,
315 [anon_sym_RPAREN] = anon_sym_RPAREN,
316 [anon_sym_LBRACK] = anon_sym_LBRACK,
317 [anon_sym_PIPE] = anon_sym_PIPE,
318 [anon_sym_RBRACK] = anon_sym_RBRACK,
319 [anon_sym_in] = anon_sym_in,
320 [anon_sym_where] = anon_sym_where,
321 [anon_sym_if] = anon_sym_if,
322 [anon_sym_then] = anon_sym_then,
323 [anon_sym_elseif] = anon_sym_elseif,
324 [anon_sym_else] = anon_sym_else,
325 [anon_sym_endif] = anon_sym_endif,
326 [anon_sym_LT_DASH_GT] = anon_sym_LT_DASH_GT,
327 [anon_sym_DASH_GT] = anon_sym_DASH_GT,
328 [anon_sym_LT_DASH] = anon_sym_LT_DASH,
329 [anon_sym_BSLASH_SLASH] = anon_sym_BSLASH_SLASH,
330 [anon_sym_xor] = anon_sym_xor,
331 [anon_sym_SLASH_BSLASH] = anon_sym_SLASH_BSLASH,
332 [anon_sym_EQ_EQ] = anon_sym_EQ_EQ,
333 [anon_sym_BANG_EQ] = anon_sym_BANG_EQ,
334 [anon_sym_LT] = anon_sym_LT,
335 [anon_sym_LT_EQ] = anon_sym_LT_EQ,
336 [anon_sym_GT] = anon_sym_GT,
337 [anon_sym_GT_EQ] = anon_sym_GT_EQ,
338 [anon_sym_subset] = anon_sym_subset,
339 [anon_sym_superset] = anon_sym_superset,
340 [anon_sym_union] = anon_sym_union,
341 [anon_sym_diff] = anon_sym_diff,
342 [anon_sym_symdiff] = anon_sym_symdiff,
343 [anon_sym_intersect] = anon_sym_intersect,
344 [anon_sym_DOT_DOT] = anon_sym_DOT_DOT,
345 [anon_sym_PLUS] = anon_sym_PLUS,
346 [anon_sym_DASH] = anon_sym_DASH,
347 [anon_sym_PLUS_PLUS] = anon_sym_PLUS_PLUS,
348 [anon_sym_STAR] = anon_sym_STAR,
349 [anon_sym_SLASH] = anon_sym_SLASH,
350 [anon_sym_div] = anon_sym_div,
351 [anon_sym_mod] = anon_sym_mod,
352 [anon_sym_CARET] = anon_sym_CARET,
353 [anon_sym_let] = anon_sym_let,
354 [anon_sym_not] = anon_sym_not,
355 [anon_sym_] = anon_sym_,
356 [anon_sym_DQUOTE] = anon_sym_DQUOTE,
357 [anon_sym_BSLASH_LPAREN] = anon_sym_BSLASH_LPAREN,
358 [anon_sym_array] = anon_sym_array,
359 [anon_sym_of] = anon_sym_of,
360 [anon_sym_var] = anon_sym_var,
361 [anon_sym_par] = anon_sym_par,
362 [anon_sym_opt] = anon_sym_opt,
363 [anon_sym_set] = anon_sym_set,
364 [anon_sym_ann] = anon_sym_ann,
365 [anon_sym_bool] = anon_sym_bool,
366 [anon_sym_float] = anon_sym_float,
367 [anon_sym_int] = anon_sym_int,
368 [anon_sym_string] = anon_sym_string,
369 [sym_absent] = sym_absent,
370 [anon_sym_true] = anon_sym_true,
371 [anon_sym_false] = anon_sym_false,
372 [sym_float_literal] = sym_float_literal,
373 [sym_integer_literal] = sym_integer_literal,
374 [aux_sym_string_content_token1] = aux_sym_string_content_token1,
375 [sym_escape_sequence] = sym_escape_sequence,
376 [sym_line_comment] = sym_line_comment,
377 [sym_block_comment] = sym_block_comment,
378 [sym_source_file] = sym_source_file,
379 [sym__item] = sym__item,
380 [sym_annotation] = sym_annotation,
381 [sym_assignment] = sym_assignment,
382 [sym_constraint] = sym_constraint,
383 [sym_declaration] = sym_declaration,
384 [sym_enumeration] = sym_enumeration,
385 [sym_function_item] = sym_function_item,
386 [sym_goal] = sym_goal,
387 [sym_include] = sym_include,
388 [sym_output] = sym_output,
389 [sym_predicate] = sym_predicate,
390 [aux_sym__annotations] = aux_sym__annotations,
391 [sym__parameters] = sym__parameters,
392 [sym__expression] = sym__expression,
393 [sym_parenthesised_expression] = sym_parenthesised_expression,
394 [sym_array_comprehension] = sym_array_comprehension,
395 [sym_call] = sym_call,
396 [sym_generator_call] = sym_generator_call,
397 [sym_generator] = sym_generator,
398 [sym_if_then_else] = sym_if_then_else,
399 [sym_indexed_access] = sym_indexed_access,
400 [sym_infix_operator] = sym_infix_operator,
401 [sym_let_expression] = sym_let_expression,
402 [sym_prefix_operator] = sym_prefix_operator,
403 [sym_set_comprehension] = sym_set_comprehension,
404 [sym_string_interpolation] = sym_string_interpolation,
405 [sym__type] = sym__type,
406 [sym_array_type] = sym_array_type,
407 [sym_type_base] = sym_type_base,
408 [sym_primitive_type] = sym_primitive_type,
409 [sym__literal] = sym__literal,
410 [sym_array_literal] = sym_array_literal,
411 [sym_boolean_literal] = sym_boolean_literal,
412 [sym_set_literal] = sym_set_literal,
413 [sym_string_literal] = sym_string_literal,
414 [sym_string_content] = sym_string_content,
415 [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1,
416 [aux_sym_enumeration_repeat1] = aux_sym_enumeration_repeat1,
417 [aux_sym__parameters_repeat1] = aux_sym__parameters_repeat1,
418 [aux_sym_array_comprehension_repeat1] = aux_sym_array_comprehension_repeat1,
419 [aux_sym_call_repeat1] = aux_sym_call_repeat1,
420 [aux_sym_if_then_else_repeat1] = aux_sym_if_then_else_repeat1,
421 [aux_sym_indexed_access_repeat1] = aux_sym_indexed_access_repeat1,
422 [aux_sym_let_expression_repeat1] = aux_sym_let_expression_repeat1,
423 [aux_sym_string_interpolation_repeat1] = aux_sym_string_interpolation_repeat1,
424 [aux_sym_array_type_repeat1] = aux_sym_array_type_repeat1,
425 [aux_sym_string_content_repeat1] = aux_sym_string_content_repeat1,
426 [anon_alias_sym_content] = anon_alias_sym_content,
427};
428
429static const TSSymbolMetadata ts_symbol_metadata[] = {
430 [ts_builtin_sym_end] = {
431 .visible = false,
432 .named = true,
433 },
434 [sym_identifier] = {
435 .visible = true,
436 .named = true,
437 },
438 [anon_sym_SEMI] = {
439 .visible = true,
440 .named = false,
441 },
442 [anon_sym_annotation] = {
443 .visible = true,
444 .named = false,
445 },
446 [anon_sym_EQ] = {
447 .visible = true,
448 .named = false,
449 },
450 [anon_sym_constraint] = {
451 .visible = true,
452 .named = false,
453 },
454 [anon_sym_COLON] = {
455 .visible = true,
456 .named = false,
457 },
458 [anon_sym_enum] = {
459 .visible = true,
460 .named = false,
461 },
462 [anon_sym_LBRACE] = {
463 .visible = true,
464 .named = false,
465 },
466 [anon_sym_COMMA] = {
467 .visible = true,
468 .named = false,
469 },
470 [anon_sym_RBRACE] = {
471 .visible = true,
472 .named = false,
473 },
474 [anon_sym_function] = {
475 .visible = true,
476 .named = false,
477 },
478 [anon_sym_solve] = {
479 .visible = true,
480 .named = false,
481 },
482 [anon_sym_satisfy] = {
483 .visible = true,
484 .named = false,
485 },
486 [anon_sym_maximize] = {
487 .visible = true,
488 .named = false,
489 },
490 [anon_sym_minimize] = {
491 .visible = true,
492 .named = false,
493 },
494 [anon_sym_include] = {
495 .visible = true,
496 .named = false,
497 },
498 [anon_sym_output] = {
499 .visible = true,
500 .named = false,
501 },
502 [anon_sym_predicate] = {
503 .visible = true,
504 .named = false,
505 },
506 [anon_sym_test] = {
507 .visible = true,
508 .named = false,
509 },
510 [anon_sym_COLON_COLON] = {
511 .visible = true,
512 .named = false,
513 },
514 [anon_sym_LPAREN] = {
515 .visible = true,
516 .named = false,
517 },
518 [anon_sym_RPAREN] = {
519 .visible = true,
520 .named = false,
521 },
522 [anon_sym_LBRACK] = {
523 .visible = true,
524 .named = false,
525 },
526 [anon_sym_PIPE] = {
527 .visible = true,
528 .named = false,
529 },
530 [anon_sym_RBRACK] = {
531 .visible = true,
532 .named = false,
533 },
534 [anon_sym_in] = {
535 .visible = true,
536 .named = false,
537 },
538 [anon_sym_where] = {
539 .visible = true,
540 .named = false,
541 },
542 [anon_sym_if] = {
543 .visible = true,
544 .named = false,
545 },
546 [anon_sym_then] = {
547 .visible = true,
548 .named = false,
549 },
550 [anon_sym_elseif] = {
551 .visible = true,
552 .named = false,
553 },
554 [anon_sym_else] = {
555 .visible = true,
556 .named = false,
557 },
558 [anon_sym_endif] = {
559 .visible = true,
560 .named = false,
561 },
562 [anon_sym_LT_DASH_GT] = {
563 .visible = true,
564 .named = false,
565 },
566 [anon_sym_DASH_GT] = {
567 .visible = true,
568 .named = false,
569 },
570 [anon_sym_LT_DASH] = {
571 .visible = true,
572 .named = false,
573 },
574 [anon_sym_BSLASH_SLASH] = {
575 .visible = true,
576 .named = false,
577 },
578 [anon_sym_xor] = {
579 .visible = true,
580 .named = false,
581 },
582 [anon_sym_SLASH_BSLASH] = {
583 .visible = true,
584 .named = false,
585 },
586 [anon_sym_EQ_EQ] = {
587 .visible = true,
588 .named = false,
589 },
590 [anon_sym_BANG_EQ] = {
591 .visible = true,
592 .named = false,
593 },
594 [anon_sym_LT] = {
595 .visible = true,
596 .named = false,
597 },
598 [anon_sym_LT_EQ] = {
599 .visible = true,
600 .named = false,
601 },
602 [anon_sym_GT] = {
603 .visible = true,
604 .named = false,
605 },
606 [anon_sym_GT_EQ] = {
607 .visible = true,
608 .named = false,
609 },
610 [anon_sym_subset] = {
611 .visible = true,
612 .named = false,
613 },
614 [anon_sym_superset] = {
615 .visible = true,
616 .named = false,
617 },
618 [anon_sym_union] = {
619 .visible = true,
620 .named = false,
621 },
622 [anon_sym_diff] = {
623 .visible = true,
624 .named = false,
625 },
626 [anon_sym_symdiff] = {
627 .visible = true,
628 .named = false,
629 },
630 [anon_sym_intersect] = {
631 .visible = true,
632 .named = false,
633 },
634 [anon_sym_DOT_DOT] = {
635 .visible = true,
636 .named = false,
637 },
638 [anon_sym_PLUS] = {
639 .visible = true,
640 .named = false,
641 },
642 [anon_sym_DASH] = {
643 .visible = true,
644 .named = false,
645 },
646 [anon_sym_PLUS_PLUS] = {
647 .visible = true,
648 .named = false,
649 },
650 [anon_sym_STAR] = {
651 .visible = true,
652 .named = false,
653 },
654 [anon_sym_SLASH] = {
655 .visible = true,
656 .named = false,
657 },
658 [anon_sym_div] = {
659 .visible = true,
660 .named = false,
661 },
662 [anon_sym_mod] = {
663 .visible = true,
664 .named = false,
665 },
666 [anon_sym_CARET] = {
667 .visible = true,
668 .named = false,
669 },
670 [anon_sym_let] = {
671 .visible = true,
672 .named = false,
673 },
674 [anon_sym_not] = {
675 .visible = true,
676 .named = false,
677 },
678 [anon_sym_] = {
679 .visible = true,
680 .named = false,
681 },
682 [anon_sym_DQUOTE] = {
683 .visible = true,
684 .named = false,
685 },
686 [anon_sym_BSLASH_LPAREN] = {
687 .visible = true,
688 .named = false,
689 },
690 [anon_sym_array] = {
691 .visible = true,
692 .named = false,
693 },
694 [anon_sym_of] = {
695 .visible = true,
696 .named = false,
697 },
698 [anon_sym_var] = {
699 .visible = true,
700 .named = false,
701 },
702 [anon_sym_par] = {
703 .visible = true,
704 .named = false,
705 },
706 [anon_sym_opt] = {
707 .visible = true,
708 .named = false,
709 },
710 [anon_sym_set] = {
711 .visible = true,
712 .named = false,
713 },
714 [anon_sym_ann] = {
715 .visible = true,
716 .named = false,
717 },
718 [anon_sym_bool] = {
719 .visible = true,
720 .named = false,
721 },
722 [anon_sym_float] = {
723 .visible = true,
724 .named = false,
725 },
726 [anon_sym_int] = {
727 .visible = true,
728 .named = false,
729 },
730 [anon_sym_string] = {
731 .visible = true,
732 .named = false,
733 },
734 [sym_absent] = {
735 .visible = true,
736 .named = true,
737 },
738 [anon_sym_true] = {
739 .visible = true,
740 .named = false,
741 },
742 [anon_sym_false] = {
743 .visible = true,
744 .named = false,
745 },
746 [sym_float_literal] = {
747 .visible = true,
748 .named = true,
749 },
750 [sym_integer_literal] = {
751 .visible = true,
752 .named = true,
753 },
754 [aux_sym_string_content_token1] = {
755 .visible = false,
756 .named = false,
757 },
758 [sym_escape_sequence] = {
759 .visible = true,
760 .named = true,
761 },
762 [sym_line_comment] = {
763 .visible = true,
764 .named = true,
765 },
766 [sym_block_comment] = {
767 .visible = true,
768 .named = true,
769 },
770 [sym_source_file] = {
771 .visible = true,
772 .named = true,
773 },
774 [sym__item] = {
775 .visible = false,
776 .named = true,
777 .supertype = true,
778 },
779 [sym_annotation] = {
780 .visible = true,
781 .named = true,
782 },
783 [sym_assignment] = {
784 .visible = true,
785 .named = true,
786 },
787 [sym_constraint] = {
788 .visible = true,
789 .named = true,
790 },
791 [sym_declaration] = {
792 .visible = true,
793 .named = true,
794 },
795 [sym_enumeration] = {
796 .visible = true,
797 .named = true,
798 },
799 [sym_function_item] = {
800 .visible = true,
801 .named = true,
802 },
803 [sym_goal] = {
804 .visible = true,
805 .named = true,
806 },
807 [sym_include] = {
808 .visible = true,
809 .named = true,
810 },
811 [sym_output] = {
812 .visible = true,
813 .named = true,
814 },
815 [sym_predicate] = {
816 .visible = true,
817 .named = true,
818 },
819 [aux_sym__annotations] = {
820 .visible = false,
821 .named = false,
822 },
823 [sym__parameters] = {
824 .visible = false,
825 .named = true,
826 },
827 [sym__expression] = {
828 .visible = false,
829 .named = true,
830 .supertype = true,
831 },
832 [sym_parenthesised_expression] = {
833 .visible = true,
834 .named = true,
835 },
836 [sym_array_comprehension] = {
837 .visible = true,
838 .named = true,
839 },
840 [sym_call] = {
841 .visible = true,
842 .named = true,
843 },
844 [sym_generator_call] = {
845 .visible = true,
846 .named = true,
847 },
848 [sym_generator] = {
849 .visible = true,
850 .named = true,
851 },
852 [sym_if_then_else] = {
853 .visible = true,
854 .named = true,
855 },
856 [sym_indexed_access] = {
857 .visible = true,
858 .named = true,
859 },
860 [sym_infix_operator] = {
861 .visible = true,
862 .named = true,
863 },
864 [sym_let_expression] = {
865 .visible = true,
866 .named = true,
867 },
868 [sym_prefix_operator] = {
869 .visible = true,
870 .named = true,
871 },
872 [sym_set_comprehension] = {
873 .visible = true,
874 .named = true,
875 },
876 [sym_string_interpolation] = {
877 .visible = true,
878 .named = true,
879 },
880 [sym__type] = {
881 .visible = false,
882 .named = true,
883 .supertype = true,
884 },
885 [sym_array_type] = {
886 .visible = true,
887 .named = true,
888 },
889 [sym_type_base] = {
890 .visible = true,
891 .named = true,
892 },
893 [sym_primitive_type] = {
894 .visible = true,
895 .named = true,
896 },
897 [sym__literal] = {
898 .visible = false,
899 .named = true,
900 },
901 [sym_array_literal] = {
902 .visible = true,
903 .named = true,
904 },
905 [sym_boolean_literal] = {
906 .visible = true,
907 .named = true,
908 },
909 [sym_set_literal] = {
910 .visible = true,
911 .named = true,
912 },
913 [sym_string_literal] = {
914 .visible = true,
915 .named = true,
916 },
917 [sym_string_content] = {
918 .visible = true,
919 .named = true,
920 },
921 [aux_sym_source_file_repeat1] = {
922 .visible = false,
923 .named = false,
924 },
925 [aux_sym_enumeration_repeat1] = {
926 .visible = false,
927 .named = false,
928 },
929 [aux_sym__parameters_repeat1] = {
930 .visible = false,
931 .named = false,
932 },
933 [aux_sym_array_comprehension_repeat1] = {
934 .visible = false,
935 .named = false,
936 },
937 [aux_sym_call_repeat1] = {
938 .visible = false,
939 .named = false,
940 },
941 [aux_sym_if_then_else_repeat1] = {
942 .visible = false,
943 .named = false,
944 },
945 [aux_sym_indexed_access_repeat1] = {
946 .visible = false,
947 .named = false,
948 },
949 [aux_sym_let_expression_repeat1] = {
950 .visible = false,
951 .named = false,
952 },
953 [aux_sym_string_interpolation_repeat1] = {
954 .visible = false,
955 .named = false,
956 },
957 [aux_sym_array_type_repeat1] = {
958 .visible = false,
959 .named = false,
960 },
961 [aux_sym_string_content_repeat1] = {
962 .visible = false,
963 .named = false,
964 },
965 [anon_alias_sym_content] = {
966 .visible = true,
967 .named = false,
968 },
969};
970
971enum {
972 field_annotations = 1,
973 field_arguments = 2,
974 field_collection = 3,
975 field_expr = 4,
976 field_generators = 5,
977 field_in = 6,
978 field_indices = 7,
979 field_left = 8,
980 field_let = 9,
981 field_members = 10,
982 field_name = 11,
983 field_operator = 12,
984 field_opt = 13,
985 field_parameters = 14,
986 field_right = 15,
987 field_set = 16,
988 field_strategy = 17,
989 field_template = 18,
990 field_type = 19,
991 field_var_par = 20,
992};
993
994static const char *ts_field_names[] = {
995 [0] = NULL,
996 [field_annotations] = "annotations",
997 [field_arguments] = "arguments",
998 [field_collection] = "collection",
999 [field_expr] = "expr",
1000 [field_generators] = "generators",
1001 [field_in] = "in",
1002 [field_indices] = "indices",
1003 [field_left] = "left",
1004 [field_let] = "let",
1005 [field_members] = "members",
1006 [field_name] = "name",
1007 [field_operator] = "operator",
1008 [field_opt] = "opt",
1009 [field_parameters] = "parameters",
1010 [field_right] = "right",
1011 [field_set] = "set",
1012 [field_strategy] = "strategy",
1013 [field_template] = "template",
1014 [field_type] = "type",
1015 [field_var_par] = "var_par",
1016};
1017
1018static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = {
1019 [1] = {.index = 0, .length = 1},
1020 [2] = {.index = 1, .length = 1},
1021 [3] = {.index = 2, .length = 1},
1022 [4] = {.index = 3, .length = 1},
1023 [5] = {.index = 4, .length = 1},
1024 [6] = {.index = 5, .length = 2},
1025 [7] = {.index = 7, .length = 2},
1026 [8] = {.index = 9, .length = 2},
1027 [9] = {.index = 11, .length = 3},
1028 [11] = {.index = 14, .length = 2},
1029 [12] = {.index = 16, .length = 2},
1030 [13] = {.index = 18, .length = 2},
1031 [14] = {.index = 20, .length = 1},
1032 [15] = {.index = 21, .length = 3},
1033 [16] = {.index = 24, .length = 2},
1034 [17] = {.index = 26, .length = 2},
1035 [18] = {.index = 28, .length = 4},
1036 [19] = {.index = 32, .length = 3},
1037 [20] = {.index = 35, .length = 3},
1038 [21] = {.index = 38, .length = 2},
1039 [22] = {.index = 40, .length = 2},
1040 [23] = {.index = 42, .length = 3},
1041 [24] = {.index = 45, .length = 3},
1042 [25] = {.index = 48, .length = 3},
1043 [26] = {.index = 51, .length = 4},
1044 [27] = {.index = 55, .length = 1},
1045 [28] = {.index = 56, .length = 4},
1046 [29] = {.index = 60, .length = 3},
1047 [30] = {.index = 63, .length = 3},
1048 [31] = {.index = 66, .length = 3},
1049 [32] = {.index = 69, .length = 2},
1050 [33] = {.index = 71, .length = 4},
1051 [34] = {.index = 75, .length = 5},
1052 [35] = {.index = 80, .length = 2},
1053 [36] = {.index = 82, .length = 4},
1054 [37] = {.index = 86, .length = 3},
1055 [38] = {.index = 89, .length = 3},
1056 [39] = {.index = 92, .length = 4},
1057 [40] = {.index = 96, .length = 3},
1058 [41] = {.index = 99, .length = 3},
1059 [42] = {.index = 102, .length = 4},
1060 [43] = {.index = 106, .length = 5},
1061 [44] = {.index = 111, .length = 4},
1062 [45] = {.index = 115, .length = 5},
1063};
1064
1065static const TSFieldMapEntry ts_field_map_entries[] = {
1066 [0] =
1067 {field_name, 1},
1068 [1] =
1069 {field_strategy, 1},
1070 [2] =
1071 {field_operator, 0},
1072 [3] =
1073 {field_var_par, 0},
1074 [4] =
1075 {field_opt, 0},
1076 [5] =
1077 {field_name, 1},
1078 {field_parameters, 2},
1079 [7] =
1080 {field_annotations, 2},
1081 {field_name, 1},
1082 [9] =
1083 {field_strategy, 1},
1084 {field_strategy, 2},
1085 [11] =
1086 {field_name, 1},
1087 {field_parameters, 2},
1088 {field_type, 0},
1089 [14] =
1090 {field_opt, 1},
1091 {field_var_par, 0},
1092 [16] =
1093 {field_set, 0},
1094 {field_set, 1},
1095 [18] =
1096 {field_expr, 2},
1097 {field_name, 0},
1098 [20] =
1099 {field_name, 0},
1100 [21] =
1101 {field_left, 0},
1102 {field_operator, 1},
1103 {field_right, 2},
1104 [24] =
1105 {field_name, 2},
1106 {field_type, 0},
1107 [26] =
1108 {field_expr, 3},
1109 {field_name, 1},
1110 [28] =
1111 {field_annotations, 3},
1112 {field_name, 1},
1113 {field_parameters, 2},
1114 {field_type, 0},
1115 [32] =
1116 {field_set, 1},
1117 {field_set, 2},
1118 {field_var_par, 0},
1119 [35] =
1120 {field_opt, 0},
1121 {field_set, 1},
1122 {field_set, 2},
1123 [38] =
1124 {field_arguments, 2},
1125 {field_name, 0},
1126 [40] =
1127 {field_collection, 0},
1128 {field_indices, 2},
1129 [42] =
1130 {field_annotations, 3},
1131 {field_name, 2},
1132 {field_type, 0},
1133 [45] =
1134 {field_expr, 4},
1135 {field_name, 1},
1136 {field_parameters, 2},
1137 [48] =
1138 {field_name, 3},
1139 {field_parameters, 4},
1140 {field_type, 1},
1141 [51] =
1142 {field_expr, 4},
1143 {field_name, 1},
1144 {field_parameters, 2},
1145 {field_type, 0},
1146 [55] =
1147 {field_in, 4},
1148 [56] =
1149 {field_opt, 1},
1150 {field_set, 2},
1151 {field_set, 3},
1152 {field_var_par, 0},
1153 [60] =
1154 {field_arguments, 2},
1155 {field_arguments, 3},
1156 {field_name, 0},
1157 [63] =
1158 {field_collection, 0},
1159 {field_indices, 2},
1160 {field_indices, 3},
1161 [66] =
1162 {field_expr, 4},
1163 {field_name, 2},
1164 {field_type, 0},
1165 [69] =
1166 {field_members, 4},
1167 {field_name, 1},
1168 [71] =
1169 {field_annotations, 5},
1170 {field_name, 3},
1171 {field_parameters, 4},
1172 {field_type, 1},
1173 [75] =
1174 {field_annotations, 3},
1175 {field_expr, 5},
1176 {field_name, 1},
1177 {field_parameters, 2},
1178 {field_type, 0},
1179 [80] =
1180 {field_in, 5},
1181 {field_let, 2},
1182 [82] =
1183 {field_annotations, 3},
1184 {field_expr, 5},
1185 {field_name, 2},
1186 {field_type, 0},
1187 [86] =
1188 {field_members, 4},
1189 {field_members, 5},
1190 {field_name, 1},
1191 [89] =
1192 {field_annotations, 2},
1193 {field_members, 5},
1194 {field_name, 1},
1195 [92] =
1196 {field_expr, 6},
1197 {field_name, 3},
1198 {field_parameters, 4},
1199 {field_type, 1},
1200 [96] =
1201 {field_in, 6},
1202 {field_let, 2},
1203 {field_let, 3},
1204 [99] =
1205 {field_generators, 2},
1206 {field_name, 0},
1207 {field_template, 5},
1208 [102] =
1209 {field_annotations, 2},
1210 {field_members, 5},
1211 {field_members, 6},
1212 {field_name, 1},
1213 [106] =
1214 {field_annotations, 5},
1215 {field_expr, 7},
1216 {field_name, 3},
1217 {field_parameters, 4},
1218 {field_type, 1},
1219 [111] =
1220 {field_generators, 2},
1221 {field_generators, 3},
1222 {field_name, 0},
1223 {field_template, 6},
1224 [115] =
1225 {field_generators, 2},
1226 {field_generators, 3},
1227 {field_generators, 4},
1228 {field_name, 0},
1229 {field_template, 7},
1230};
1231
1232static TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = {
1233 [0] = {0},
1234 [10] = {
1235 [1] = anon_alias_sym_content,
1236 },
1237};
1238
1239static uint16_t ts_non_terminal_alias_map[] = {
1240 sym_string_content, 2,
1241 sym_string_content,
1242 anon_alias_sym_content,
1243 0,
1244};
1245
1246static bool ts_lex(TSLexer *lexer, TSStateId state) {
1247 START_LEXER();
1248 eof = lexer->eof(lexer);
1249 switch (state) {
1250 case 0:
1251 if (eof) ADVANCE(35);
1252 if (lookahead == '!') ADVANCE(13);
1253 if (lookahead == '"') ADVANCE(69);
1254 if (lookahead == '%') ADVANCE(89);
1255 if (lookahead == '(') ADVANCE(43);
1256 if (lookahead == ')') ADVANCE(44);
1257 if (lookahead == '*') ADVANCE(65);
1258 if (lookahead == '+') ADVANCE(61);
1259 if (lookahead == ',') ADVANCE(40);
1260 if (lookahead == '-') ADVANCE(63);
1261 if (lookahead == '.') ADVANCE(11);
1262 if (lookahead == '/') ADVANCE(66);
1263 if (lookahead == '0') ADVANCE(74);
1264 if (lookahead == ':') ADVANCE(38);
1265 if (lookahead == ';') ADVANCE(36);
1266 if (lookahead == '<') ADVANCE(56);
1267 if (lookahead == '=') ADVANCE(37);
1268 if (lookahead == '>') ADVANCE(58);
1269 if (lookahead == '[') ADVANCE(45);
1270 if (lookahead == '\\') ADVANCE(7);
1271 if (lookahead == ']') ADVANCE(47);
1272 if (lookahead == '^') ADVANCE(67);
1273 if (lookahead == '{') ADVANCE(39);
1274 if (lookahead == '|') ADVANCE(46);
1275 if (lookahead == '}') ADVANCE(41);
1276 if (lookahead == 172) ADVANCE(68);
1277 if (lookahead == '\t' ||
1278 lookahead == '\n' ||
1279 lookahead == '\r' ||
1280 lookahead == ' ') SKIP(32)
1281 if (('1' <= lookahead && lookahead <= '9')) ADVANCE(75);
1282 if (('A' <= lookahead && lookahead <= 'Z') ||
1283 ('a' <= lookahead && lookahead <= 'z')) ADVANCE(88);
1284 END_STATE();
1285 case 1:
1286 if (lookahead == '\n') SKIP(3)
1287 if (lookahead == '"') ADVANCE(69);
1288 if (lookahead == '%') ADVANCE(84);
1289 if (lookahead == '/') ADVANCE(82);
1290 if (lookahead == '\\') ADVANCE(8);
1291 if (lookahead == '\t' ||
1292 lookahead == '\r' ||
1293 lookahead == ' ') ADVANCE(79);
1294 if (lookahead != 0) ADVANCE(84);
1295 END_STATE();
1296 case 2:
1297 if (lookahead == '\n') SKIP(4)
1298 if (lookahead == '"') ADVANCE(69);
1299 if (lookahead == '%') ADVANCE(84);
1300 if (lookahead == '/') ADVANCE(82);
1301 if (lookahead == '\\') ADVANCE(15);
1302 if (lookahead == '\t' ||
1303 lookahead == '\r' ||
1304 lookahead == ' ') ADVANCE(79);
1305 if (lookahead != 0) ADVANCE(84);
1306 END_STATE();
1307 case 3:
1308 if (lookahead == '"') ADVANCE(69);
1309 if (lookahead == '%') ADVANCE(89);
1310 if (lookahead == '/') ADVANCE(9);
1311 if (lookahead == '\\') ADVANCE(5);
1312 if (lookahead == '\t' ||
1313 lookahead == '\n' ||
1314 lookahead == '\r' ||
1315 lookahead == ' ') SKIP(3)
1316 END_STATE();
1317 case 4:
1318 if (lookahead == '"') ADVANCE(69);
1319 if (lookahead == '%') ADVANCE(89);
1320 if (lookahead == '/') ADVANCE(9);
1321 if (lookahead == '\t' ||
1322 lookahead == '\n' ||
1323 lookahead == '\r' ||
1324 lookahead == ' ') SKIP(4)
1325 END_STATE();
1326 case 5:
1327 if (lookahead == '(') ADVANCE(70);
1328 END_STATE();
1329 case 6:
1330 if (lookahead == '(') ADVANCE(70);
1331 if (lookahead == '/') ADVANCE(51);
1332 END_STATE();
1333 case 7:
1334 if (lookahead == '(') ADVANCE(70);
1335 if (lookahead == '/') ADVANCE(51);
1336 if (lookahead == 'U') ADVANCE(29);
1337 if (lookahead == 'u') ADVANCE(25);
1338 if (lookahead == 'x') ADVANCE(23);
1339 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(87);
1340 if (lookahead != 0) ADVANCE(85);
1341 END_STATE();
1342 case 8:
1343 if (lookahead == '(') ADVANCE(70);
1344 if (lookahead == 'U') ADVANCE(29);
1345 if (lookahead == 'u') ADVANCE(25);
1346 if (lookahead == 'x') ADVANCE(23);
1347 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(87);
1348 if (lookahead != 0) ADVANCE(85);
1349 END_STATE();
1350 case 9:
1351 if (lookahead == '*') ADVANCE(31);
1352 END_STATE();
1353 case 10:
1354 if (lookahead == '*') ADVANCE(30);
1355 if (lookahead == '/') ADVANCE(90);
1356 if (lookahead != 0) ADVANCE(31);
1357 END_STATE();
1358 case 11:
1359 if (lookahead == '.') ADVANCE(60);
1360 END_STATE();
1361 case 12:
1362 if (lookahead == '/') ADVANCE(51);
1363 END_STATE();
1364 case 13:
1365 if (lookahead == '=') ADVANCE(54);
1366 END_STATE();
1367 case 14:
1368 if (lookahead == '>') ADVANCE(71);
1369 END_STATE();
1370 case 15:
1371 if (lookahead == 'U') ADVANCE(29);
1372 if (lookahead == 'u') ADVANCE(25);
1373 if (lookahead == 'x') ADVANCE(23);
1374 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(87);
1375 if (lookahead != 0) ADVANCE(85);
1376 END_STATE();
1377 case 16:
1378 if (lookahead == '+' ||
1379 lookahead == '-') ADVANCE(20);
1380 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(73);
1381 END_STATE();
1382 case 17:
1383 if (lookahead == '0' ||
1384 lookahead == '1') ADVANCE(76);
1385 END_STATE();
1386 case 18:
1387 if (('0' <= lookahead && lookahead <= '7')) ADVANCE(77);
1388 END_STATE();
1389 case 19:
1390 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(72);
1391 END_STATE();
1392 case 20:
1393 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(73);
1394 END_STATE();
1395 case 21:
1396 if (('0' <= lookahead && lookahead <= '9') ||
1397 ('A' <= lookahead && lookahead <= 'F') ||
1398 ('a' <= lookahead && lookahead <= 'f')) ADVANCE(85);
1399 END_STATE();
1400 case 22:
1401 if (('0' <= lookahead && lookahead <= '9') ||
1402 ('A' <= lookahead && lookahead <= 'F') ||
1403 ('a' <= lookahead && lookahead <= 'f')) ADVANCE(78);
1404 END_STATE();
1405 case 23:
1406 if (('0' <= lookahead && lookahead <= '9') ||
1407 ('A' <= lookahead && lookahead <= 'F') ||
1408 ('a' <= lookahead && lookahead <= 'f')) ADVANCE(21);
1409 END_STATE();
1410 case 24:
1411 if (('0' <= lookahead && lookahead <= '9') ||
1412 ('A' <= lookahead && lookahead <= 'F') ||
1413 ('a' <= lookahead && lookahead <= 'f')) ADVANCE(23);
1414 END_STATE();
1415 case 25:
1416 if (('0' <= lookahead && lookahead <= '9') ||
1417 ('A' <= lookahead && lookahead <= 'F') ||
1418 ('a' <= lookahead && lookahead <= 'f')) ADVANCE(24);
1419 END_STATE();
1420 case 26:
1421 if (('0' <= lookahead && lookahead <= '9') ||
1422 ('A' <= lookahead && lookahead <= 'F') ||
1423 ('a' <= lookahead && lookahead <= 'f')) ADVANCE(25);
1424 END_STATE();
1425 case 27:
1426 if (('0' <= lookahead && lookahead <= '9') ||
1427 ('A' <= lookahead && lookahead <= 'F') ||
1428 ('a' <= lookahead && lookahead <= 'f')) ADVANCE(26);
1429 END_STATE();
1430 case 28:
1431 if (('0' <= lookahead && lookahead <= '9') ||
1432 ('A' <= lookahead && lookahead <= 'F') ||
1433 ('a' <= lookahead && lookahead <= 'f')) ADVANCE(27);
1434 END_STATE();
1435 case 29:
1436 if (('0' <= lookahead && lookahead <= '9') ||
1437 ('A' <= lookahead && lookahead <= 'F') ||
1438 ('a' <= lookahead && lookahead <= 'f')) ADVANCE(28);
1439 END_STATE();
1440 case 30:
1441 if (lookahead != 0 &&
1442 lookahead != '*' &&
1443 lookahead != '/') ADVANCE(31);
1444 if (lookahead == '*') ADVANCE(10);
1445 if (lookahead == '/') ADVANCE(91);
1446 END_STATE();
1447 case 31:
1448 if (lookahead != 0 &&
1449 lookahead != '*') ADVANCE(31);
1450 if (lookahead == '*') ADVANCE(10);
1451 END_STATE();
1452 case 32:
1453 if (eof) ADVANCE(35);
1454 if (lookahead == '!') ADVANCE(13);
1455 if (lookahead == '"') ADVANCE(69);
1456 if (lookahead == '%') ADVANCE(89);
1457 if (lookahead == '(') ADVANCE(43);
1458 if (lookahead == ')') ADVANCE(44);
1459 if (lookahead == '*') ADVANCE(65);
1460 if (lookahead == '+') ADVANCE(61);
1461 if (lookahead == ',') ADVANCE(40);
1462 if (lookahead == '-') ADVANCE(63);
1463 if (lookahead == '.') ADVANCE(11);
1464 if (lookahead == '/') ADVANCE(66);
1465 if (lookahead == '0') ADVANCE(74);
1466 if (lookahead == ':') ADVANCE(38);
1467 if (lookahead == ';') ADVANCE(36);
1468 if (lookahead == '<') ADVANCE(56);
1469 if (lookahead == '=') ADVANCE(37);
1470 if (lookahead == '>') ADVANCE(58);
1471 if (lookahead == '[') ADVANCE(45);
1472 if (lookahead == '\\') ADVANCE(6);
1473 if (lookahead == ']') ADVANCE(47);
1474 if (lookahead == '^') ADVANCE(67);
1475 if (lookahead == '{') ADVANCE(39);
1476 if (lookahead == '|') ADVANCE(46);
1477 if (lookahead == '}') ADVANCE(41);
1478 if (lookahead == 172) ADVANCE(68);
1479 if (lookahead == '\t' ||
1480 lookahead == '\n' ||
1481 lookahead == '\r' ||
1482 lookahead == ' ') SKIP(32)
1483 if (('1' <= lookahead && lookahead <= '9')) ADVANCE(75);
1484 if (('A' <= lookahead && lookahead <= 'Z') ||
1485 ('a' <= lookahead && lookahead <= 'z')) ADVANCE(88);
1486 END_STATE();
1487 case 33:
1488 if (eof) ADVANCE(35);
1489 if (lookahead == '!') ADVANCE(13);
1490 if (lookahead == '%') ADVANCE(89);
1491 if (lookahead == '(') ADVANCE(43);
1492 if (lookahead == ')') ADVANCE(44);
1493 if (lookahead == '*') ADVANCE(65);
1494 if (lookahead == '+') ADVANCE(61);
1495 if (lookahead == ',') ADVANCE(40);
1496 if (lookahead == '-') ADVANCE(63);
1497 if (lookahead == '.') ADVANCE(11);
1498 if (lookahead == '/') ADVANCE(66);
1499 if (lookahead == ':') ADVANCE(38);
1500 if (lookahead == ';') ADVANCE(36);
1501 if (lookahead == '<') ADVANCE(55);
1502 if (lookahead == '=') ADVANCE(37);
1503 if (lookahead == '>') ADVANCE(58);
1504 if (lookahead == '[') ADVANCE(45);
1505 if (lookahead == '\\') ADVANCE(12);
1506 if (lookahead == ']') ADVANCE(47);
1507 if (lookahead == '^') ADVANCE(67);
1508 if (lookahead == '|') ADVANCE(46);
1509 if (lookahead == '}') ADVANCE(41);
1510 if (lookahead == '\t' ||
1511 lookahead == '\n' ||
1512 lookahead == '\r' ||
1513 lookahead == ' ') SKIP(33)
1514 if (('A' <= lookahead && lookahead <= 'Z') ||
1515 ('a' <= lookahead && lookahead <= 'z')) ADVANCE(88);
1516 END_STATE();
1517 case 34:
1518 if (eof) ADVANCE(35);
1519 if (lookahead == '"') ADVANCE(69);
1520 if (lookahead == '%') ADVANCE(89);
1521 if (lookahead == '(') ADVANCE(43);
1522 if (lookahead == ')') ADVANCE(44);
1523 if (lookahead == '-') ADVANCE(62);
1524 if (lookahead == '/') ADVANCE(9);
1525 if (lookahead == '0') ADVANCE(74);
1526 if (lookahead == '<') ADVANCE(14);
1527 if (lookahead == '[') ADVANCE(45);
1528 if (lookahead == ']') ADVANCE(47);
1529 if (lookahead == '{') ADVANCE(39);
1530 if (lookahead == '}') ADVANCE(41);
1531 if (lookahead == 172) ADVANCE(68);
1532 if (lookahead == '\t' ||
1533 lookahead == '\n' ||
1534 lookahead == '\r' ||
1535 lookahead == ' ') SKIP(34)
1536 if (('1' <= lookahead && lookahead <= '9')) ADVANCE(75);
1537 if (('A' <= lookahead && lookahead <= 'Z') ||
1538 ('a' <= lookahead && lookahead <= 'z')) ADVANCE(88);
1539 END_STATE();
1540 case 35:
1541 ACCEPT_TOKEN(ts_builtin_sym_end);
1542 END_STATE();
1543 case 36:
1544 ACCEPT_TOKEN(anon_sym_SEMI);
1545 END_STATE();
1546 case 37:
1547 ACCEPT_TOKEN(anon_sym_EQ);
1548 if (lookahead == '=') ADVANCE(53);
1549 END_STATE();
1550 case 38:
1551 ACCEPT_TOKEN(anon_sym_COLON);
1552 if (lookahead == ':') ADVANCE(42);
1553 END_STATE();
1554 case 39:
1555 ACCEPT_TOKEN(anon_sym_LBRACE);
1556 END_STATE();
1557 case 40:
1558 ACCEPT_TOKEN(anon_sym_COMMA);
1559 END_STATE();
1560 case 41:
1561 ACCEPT_TOKEN(anon_sym_RBRACE);
1562 END_STATE();
1563 case 42:
1564 ACCEPT_TOKEN(anon_sym_COLON_COLON);
1565 END_STATE();
1566 case 43:
1567 ACCEPT_TOKEN(anon_sym_LPAREN);
1568 END_STATE();
1569 case 44:
1570 ACCEPT_TOKEN(anon_sym_RPAREN);
1571 END_STATE();
1572 case 45:
1573 ACCEPT_TOKEN(anon_sym_LBRACK);
1574 END_STATE();
1575 case 46:
1576 ACCEPT_TOKEN(anon_sym_PIPE);
1577 END_STATE();
1578 case 47:
1579 ACCEPT_TOKEN(anon_sym_RBRACK);
1580 END_STATE();
1581 case 48:
1582 ACCEPT_TOKEN(anon_sym_LT_DASH_GT);
1583 END_STATE();
1584 case 49:
1585 ACCEPT_TOKEN(anon_sym_DASH_GT);
1586 END_STATE();
1587 case 50:
1588 ACCEPT_TOKEN(anon_sym_LT_DASH);
1589 if (lookahead == '>') ADVANCE(48);
1590 END_STATE();
1591 case 51:
1592 ACCEPT_TOKEN(anon_sym_BSLASH_SLASH);
1593 END_STATE();
1594 case 52:
1595 ACCEPT_TOKEN(anon_sym_SLASH_BSLASH);
1596 END_STATE();
1597 case 53:
1598 ACCEPT_TOKEN(anon_sym_EQ_EQ);
1599 END_STATE();
1600 case 54:
1601 ACCEPT_TOKEN(anon_sym_BANG_EQ);
1602 END_STATE();
1603 case 55:
1604 ACCEPT_TOKEN(anon_sym_LT);
1605 if (lookahead == '-') ADVANCE(50);
1606 if (lookahead == '=') ADVANCE(57);
1607 END_STATE();
1608 case 56:
1609 ACCEPT_TOKEN(anon_sym_LT);
1610 if (lookahead == '-') ADVANCE(50);
1611 if (lookahead == '=') ADVANCE(57);
1612 if (lookahead == '>') ADVANCE(71);
1613 END_STATE();
1614 case 57:
1615 ACCEPT_TOKEN(anon_sym_LT_EQ);
1616 END_STATE();
1617 case 58:
1618 ACCEPT_TOKEN(anon_sym_GT);
1619 if (lookahead == '=') ADVANCE(59);
1620 END_STATE();
1621 case 59:
1622 ACCEPT_TOKEN(anon_sym_GT_EQ);
1623 END_STATE();
1624 case 60:
1625 ACCEPT_TOKEN(anon_sym_DOT_DOT);
1626 END_STATE();
1627 case 61:
1628 ACCEPT_TOKEN(anon_sym_PLUS);
1629 if (lookahead == '+') ADVANCE(64);
1630 END_STATE();
1631 case 62:
1632 ACCEPT_TOKEN(anon_sym_DASH);
1633 END_STATE();
1634 case 63:
1635 ACCEPT_TOKEN(anon_sym_DASH);
1636 if (lookahead == '>') ADVANCE(49);
1637 END_STATE();
1638 case 64:
1639 ACCEPT_TOKEN(anon_sym_PLUS_PLUS);
1640 END_STATE();
1641 case 65:
1642 ACCEPT_TOKEN(anon_sym_STAR);
1643 END_STATE();
1644 case 66:
1645 ACCEPT_TOKEN(anon_sym_SLASH);
1646 if (lookahead == '*') ADVANCE(31);
1647 if (lookahead == '\\') ADVANCE(52);
1648 END_STATE();
1649 case 67:
1650 ACCEPT_TOKEN(anon_sym_CARET);
1651 END_STATE();
1652 case 68:
1653 ACCEPT_TOKEN(anon_sym_);
1654 END_STATE();
1655 case 69:
1656 ACCEPT_TOKEN(anon_sym_DQUOTE);
1657 END_STATE();
1658 case 70:
1659 ACCEPT_TOKEN(anon_sym_BSLASH_LPAREN);
1660 END_STATE();
1661 case 71:
1662 ACCEPT_TOKEN(sym_absent);
1663 END_STATE();
1664 case 72:
1665 ACCEPT_TOKEN(sym_float_literal);
1666 if (lookahead == 'E' ||
1667 lookahead == 'e') ADVANCE(16);
1668 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(72);
1669 END_STATE();
1670 case 73:
1671 ACCEPT_TOKEN(sym_float_literal);
1672 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(73);
1673 END_STATE();
1674 case 74:
1675 ACCEPT_TOKEN(sym_integer_literal);
1676 if (lookahead == '.') ADVANCE(19);
1677 if (lookahead == 'b') ADVANCE(17);
1678 if (lookahead == 'o') ADVANCE(18);
1679 if (lookahead == 'x') ADVANCE(22);
1680 if (lookahead == 'E' ||
1681 lookahead == 'e') ADVANCE(16);
1682 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(75);
1683 END_STATE();
1684 case 75:
1685 ACCEPT_TOKEN(sym_integer_literal);
1686 if (lookahead == '.') ADVANCE(19);
1687 if (lookahead == 'E' ||
1688 lookahead == 'e') ADVANCE(16);
1689 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(75);
1690 END_STATE();
1691 case 76:
1692 ACCEPT_TOKEN(sym_integer_literal);
1693 if (lookahead == '0' ||
1694 lookahead == '1') ADVANCE(76);
1695 END_STATE();
1696 case 77:
1697 ACCEPT_TOKEN(sym_integer_literal);
1698 if (('0' <= lookahead && lookahead <= '7')) ADVANCE(77);
1699 END_STATE();
1700 case 78:
1701 ACCEPT_TOKEN(sym_integer_literal);
1702 if (('0' <= lookahead && lookahead <= '9') ||
1703 ('A' <= lookahead && lookahead <= 'F') ||
1704 ('a' <= lookahead && lookahead <= 'f')) ADVANCE(78);
1705 END_STATE();
1706 case 79:
1707 ACCEPT_TOKEN(aux_sym_string_content_token1);
1708 if (lookahead == '%') ADVANCE(84);
1709 if (lookahead == '/') ADVANCE(82);
1710 if (lookahead == '\t' ||
1711 lookahead == '\r' ||
1712 lookahead == ' ') ADVANCE(79);
1713 if (lookahead != 0 &&
1714 lookahead != '\n' &&
1715 lookahead != '"' &&
1716 lookahead != '\\') ADVANCE(84);
1717 END_STATE();
1718 case 80:
1719 ACCEPT_TOKEN(aux_sym_string_content_token1);
1720 if (lookahead == '*') ADVANCE(83);
1721 if (lookahead == '/') ADVANCE(81);
1722 if (lookahead != 0 &&
1723 lookahead != '\n' &&
1724 lookahead != '"' &&
1725 lookahead != '\\') ADVANCE(81);
1726 END_STATE();
1727 case 81:
1728 ACCEPT_TOKEN(aux_sym_string_content_token1);
1729 if (lookahead == '*') ADVANCE(83);
1730 if (lookahead != 0 &&
1731 lookahead != '\n' &&
1732 lookahead != '"' &&
1733 lookahead != '\\') ADVANCE(81);
1734 END_STATE();
1735 case 82:
1736 ACCEPT_TOKEN(aux_sym_string_content_token1);
1737 if (lookahead == '*') ADVANCE(81);
1738 if (lookahead != 0 &&
1739 lookahead != '\n' &&
1740 lookahead != '"' &&
1741 lookahead != '\\') ADVANCE(84);
1742 END_STATE();
1743 case 83:
1744 ACCEPT_TOKEN(aux_sym_string_content_token1);
1745 if (lookahead == '*') ADVANCE(80);
1746 if (lookahead == '/') ADVANCE(84);
1747 if (lookahead != 0 &&
1748 lookahead != '\n' &&
1749 lookahead != '"' &&
1750 lookahead != '\\') ADVANCE(81);
1751 END_STATE();
1752 case 84:
1753 ACCEPT_TOKEN(aux_sym_string_content_token1);
1754 if (lookahead != 0 &&
1755 lookahead != '\n' &&
1756 lookahead != '"' &&
1757 lookahead != '\\') ADVANCE(84);
1758 END_STATE();
1759 case 85:
1760 ACCEPT_TOKEN(sym_escape_sequence);
1761 END_STATE();
1762 case 86:
1763 ACCEPT_TOKEN(sym_escape_sequence);
1764 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(85);
1765 END_STATE();
1766 case 87:
1767 ACCEPT_TOKEN(sym_escape_sequence);
1768 if (('0' <= lookahead && lookahead <= '9')) ADVANCE(86);
1769 END_STATE();
1770 case 88:
1771 ACCEPT_TOKEN(sym_identifier);
1772 if (('0' <= lookahead && lookahead <= '9') ||
1773 ('A' <= lookahead && lookahead <= 'Z') ||
1774 lookahead == '_' ||
1775 ('a' <= lookahead && lookahead <= 'z')) ADVANCE(88);
1776 END_STATE();
1777 case 89:
1778 ACCEPT_TOKEN(sym_line_comment);
1779 if (lookahead != 0 &&
1780 lookahead != '\n') ADVANCE(89);
1781 END_STATE();
1782 case 90:
1783 ACCEPT_TOKEN(sym_block_comment);
1784 END_STATE();
1785 case 91:
1786 ACCEPT_TOKEN(sym_block_comment);
1787 if (lookahead != 0 &&
1788 lookahead != '*') ADVANCE(31);
1789 if (lookahead == '*') ADVANCE(10);
1790 END_STATE();
1791 default:
1792 return false;
1793 }
1794}
1795
1796static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) {
1797 START_LEXER();
1798 eof = lexer->eof(lexer);
1799 switch (state) {
1800 case 0:
1801 if (lookahead == 'a') ADVANCE(1);
1802 if (lookahead == 'b') ADVANCE(2);
1803 if (lookahead == 'c') ADVANCE(3);
1804 if (lookahead == 'd') ADVANCE(4);
1805 if (lookahead == 'e') ADVANCE(5);
1806 if (lookahead == 'f') ADVANCE(6);
1807 if (lookahead == 'i') ADVANCE(7);
1808 if (lookahead == 'l') ADVANCE(8);
1809 if (lookahead == 'm') ADVANCE(9);
1810 if (lookahead == 'n') ADVANCE(10);
1811 if (lookahead == 'o') ADVANCE(11);
1812 if (lookahead == 'p') ADVANCE(12);
1813 if (lookahead == 's') ADVANCE(13);
1814 if (lookahead == 't') ADVANCE(14);
1815 if (lookahead == 'u') ADVANCE(15);
1816 if (lookahead == 'v') ADVANCE(16);
1817 if (lookahead == 'w') ADVANCE(17);
1818 if (lookahead == 'x') ADVANCE(18);
1819 if (lookahead == '\t' ||
1820 lookahead == '\n' ||
1821 lookahead == '\r' ||
1822 lookahead == ' ') SKIP(0)
1823 END_STATE();
1824 case 1:
1825 if (lookahead == 'n') ADVANCE(19);
1826 if (lookahead == 'r') ADVANCE(20);
1827 END_STATE();
1828 case 2:
1829 if (lookahead == 'o') ADVANCE(21);
1830 END_STATE();
1831 case 3:
1832 if (lookahead == 'o') ADVANCE(22);
1833 END_STATE();
1834 case 4:
1835 if (lookahead == 'i') ADVANCE(23);
1836 END_STATE();
1837 case 5:
1838 if (lookahead == 'l') ADVANCE(24);
1839 if (lookahead == 'n') ADVANCE(25);
1840 END_STATE();
1841 case 6:
1842 if (lookahead == 'a') ADVANCE(26);
1843 if (lookahead == 'l') ADVANCE(27);
1844 if (lookahead == 'u') ADVANCE(28);
1845 END_STATE();
1846 case 7:
1847 if (lookahead == 'f') ADVANCE(29);
1848 if (lookahead == 'n') ADVANCE(30);
1849 END_STATE();
1850 case 8:
1851 if (lookahead == 'e') ADVANCE(31);
1852 END_STATE();
1853 case 9:
1854 if (lookahead == 'a') ADVANCE(32);
1855 if (lookahead == 'i') ADVANCE(33);
1856 if (lookahead == 'o') ADVANCE(34);
1857 END_STATE();
1858 case 10:
1859 if (lookahead == 'o') ADVANCE(35);
1860 END_STATE();
1861 case 11:
1862 if (lookahead == 'f') ADVANCE(36);
1863 if (lookahead == 'p') ADVANCE(37);
1864 if (lookahead == 'u') ADVANCE(38);
1865 END_STATE();
1866 case 12:
1867 if (lookahead == 'a') ADVANCE(39);
1868 if (lookahead == 'r') ADVANCE(40);
1869 END_STATE();
1870 case 13:
1871 if (lookahead == 'a') ADVANCE(41);
1872 if (lookahead == 'e') ADVANCE(42);
1873 if (lookahead == 'o') ADVANCE(43);
1874 if (lookahead == 't') ADVANCE(44);
1875 if (lookahead == 'u') ADVANCE(45);
1876 if (lookahead == 'y') ADVANCE(46);
1877 END_STATE();
1878 case 14:
1879 if (lookahead == 'e') ADVANCE(47);
1880 if (lookahead == 'h') ADVANCE(48);
1881 if (lookahead == 'r') ADVANCE(49);
1882 END_STATE();
1883 case 15:
1884 if (lookahead == 'n') ADVANCE(50);
1885 END_STATE();
1886 case 16:
1887 if (lookahead == 'a') ADVANCE(51);
1888 END_STATE();
1889 case 17:
1890 if (lookahead == 'h') ADVANCE(52);
1891 END_STATE();
1892 case 18:
1893 if (lookahead == 'o') ADVANCE(53);
1894 END_STATE();
1895 case 19:
1896 if (lookahead == 'n') ADVANCE(54);
1897 END_STATE();
1898 case 20:
1899 if (lookahead == 'r') ADVANCE(55);
1900 END_STATE();
1901 case 21:
1902 if (lookahead == 'o') ADVANCE(56);
1903 END_STATE();
1904 case 22:
1905 if (lookahead == 'n') ADVANCE(57);
1906 END_STATE();
1907 case 23:
1908 if (lookahead == 'f') ADVANCE(58);
1909 if (lookahead == 'v') ADVANCE(59);
1910 END_STATE();
1911 case 24:
1912 if (lookahead == 's') ADVANCE(60);
1913 END_STATE();
1914 case 25:
1915 if (lookahead == 'd') ADVANCE(61);
1916 if (lookahead == 'u') ADVANCE(62);
1917 END_STATE();
1918 case 26:
1919 if (lookahead == 'l') ADVANCE(63);
1920 END_STATE();
1921 case 27:
1922 if (lookahead == 'o') ADVANCE(64);
1923 END_STATE();
1924 case 28:
1925 if (lookahead == 'n') ADVANCE(65);
1926 END_STATE();
1927 case 29:
1928 ACCEPT_TOKEN(anon_sym_if);
1929 END_STATE();
1930 case 30:
1931 ACCEPT_TOKEN(anon_sym_in);
1932 if (lookahead == 'c') ADVANCE(66);
1933 if (lookahead == 't') ADVANCE(67);
1934 END_STATE();
1935 case 31:
1936 if (lookahead == 't') ADVANCE(68);
1937 END_STATE();
1938 case 32:
1939 if (lookahead == 'x') ADVANCE(69);
1940 END_STATE();
1941 case 33:
1942 if (lookahead == 'n') ADVANCE(70);
1943 END_STATE();
1944 case 34:
1945 if (lookahead == 'd') ADVANCE(71);
1946 END_STATE();
1947 case 35:
1948 if (lookahead == 't') ADVANCE(72);
1949 END_STATE();
1950 case 36:
1951 ACCEPT_TOKEN(anon_sym_of);
1952 END_STATE();
1953 case 37:
1954 if (lookahead == 't') ADVANCE(73);
1955 END_STATE();
1956 case 38:
1957 if (lookahead == 't') ADVANCE(74);
1958 END_STATE();
1959 case 39:
1960 if (lookahead == 'r') ADVANCE(75);
1961 END_STATE();
1962 case 40:
1963 if (lookahead == 'e') ADVANCE(76);
1964 END_STATE();
1965 case 41:
1966 if (lookahead == 't') ADVANCE(77);
1967 END_STATE();
1968 case 42:
1969 if (lookahead == 't') ADVANCE(78);
1970 END_STATE();
1971 case 43:
1972 if (lookahead == 'l') ADVANCE(79);
1973 END_STATE();
1974 case 44:
1975 if (lookahead == 'r') ADVANCE(80);
1976 END_STATE();
1977 case 45:
1978 if (lookahead == 'b') ADVANCE(81);
1979 if (lookahead == 'p') ADVANCE(82);
1980 END_STATE();
1981 case 46:
1982 if (lookahead == 'm') ADVANCE(83);
1983 END_STATE();
1984 case 47:
1985 if (lookahead == 's') ADVANCE(84);
1986 END_STATE();
1987 case 48:
1988 if (lookahead == 'e') ADVANCE(85);
1989 END_STATE();
1990 case 49:
1991 if (lookahead == 'u') ADVANCE(86);
1992 END_STATE();
1993 case 50:
1994 if (lookahead == 'i') ADVANCE(87);
1995 END_STATE();
1996 case 51:
1997 if (lookahead == 'r') ADVANCE(88);
1998 END_STATE();
1999 case 52:
2000 if (lookahead == 'e') ADVANCE(89);
2001 END_STATE();
2002 case 53:
2003 if (lookahead == 'r') ADVANCE(90);
2004 END_STATE();
2005 case 54:
2006 ACCEPT_TOKEN(anon_sym_ann);
2007 if (lookahead == 'o') ADVANCE(91);
2008 END_STATE();
2009 case 55:
2010 if (lookahead == 'a') ADVANCE(92);
2011 END_STATE();
2012 case 56:
2013 if (lookahead == 'l') ADVANCE(93);
2014 END_STATE();
2015 case 57:
2016 if (lookahead == 's') ADVANCE(94);
2017 END_STATE();
2018 case 58:
2019 if (lookahead == 'f') ADVANCE(95);
2020 END_STATE();
2021 case 59:
2022 ACCEPT_TOKEN(anon_sym_div);
2023 END_STATE();
2024 case 60:
2025 if (lookahead == 'e') ADVANCE(96);
2026 END_STATE();
2027 case 61:
2028 if (lookahead == 'i') ADVANCE(97);
2029 END_STATE();
2030 case 62:
2031 if (lookahead == 'm') ADVANCE(98);
2032 END_STATE();
2033 case 63:
2034 if (lookahead == 's') ADVANCE(99);
2035 END_STATE();
2036 case 64:
2037 if (lookahead == 'a') ADVANCE(100);
2038 END_STATE();
2039 case 65:
2040 if (lookahead == 'c') ADVANCE(101);
2041 END_STATE();
2042 case 66:
2043 if (lookahead == 'l') ADVANCE(102);
2044 END_STATE();
2045 case 67:
2046 ACCEPT_TOKEN(anon_sym_int);
2047 if (lookahead == 'e') ADVANCE(103);
2048 END_STATE();
2049 case 68:
2050 ACCEPT_TOKEN(anon_sym_let);
2051 END_STATE();
2052 case 69:
2053 if (lookahead == 'i') ADVANCE(104);
2054 END_STATE();
2055 case 70:
2056 if (lookahead == 'i') ADVANCE(105);
2057 END_STATE();
2058 case 71:
2059 ACCEPT_TOKEN(anon_sym_mod);
2060 END_STATE();
2061 case 72:
2062 ACCEPT_TOKEN(anon_sym_not);
2063 END_STATE();
2064 case 73:
2065 ACCEPT_TOKEN(anon_sym_opt);
2066 END_STATE();
2067 case 74:
2068 if (lookahead == 'p') ADVANCE(106);
2069 END_STATE();
2070 case 75:
2071 ACCEPT_TOKEN(anon_sym_par);
2072 END_STATE();
2073 case 76:
2074 if (lookahead == 'd') ADVANCE(107);
2075 END_STATE();
2076 case 77:
2077 if (lookahead == 'i') ADVANCE(108);
2078 END_STATE();
2079 case 78:
2080 ACCEPT_TOKEN(anon_sym_set);
2081 END_STATE();
2082 case 79:
2083 if (lookahead == 'v') ADVANCE(109);
2084 END_STATE();
2085 case 80:
2086 if (lookahead == 'i') ADVANCE(110);
2087 END_STATE();
2088 case 81:
2089 if (lookahead == 's') ADVANCE(111);
2090 END_STATE();
2091 case 82:
2092 if (lookahead == 'e') ADVANCE(112);
2093 END_STATE();
2094 case 83:
2095 if (lookahead == 'd') ADVANCE(113);
2096 END_STATE();
2097 case 84:
2098 if (lookahead == 't') ADVANCE(114);
2099 END_STATE();
2100 case 85:
2101 if (lookahead == 'n') ADVANCE(115);
2102 END_STATE();
2103 case 86:
2104 if (lookahead == 'e') ADVANCE(116);
2105 END_STATE();
2106 case 87:
2107 if (lookahead == 'o') ADVANCE(117);
2108 END_STATE();
2109 case 88:
2110 ACCEPT_TOKEN(anon_sym_var);
2111 END_STATE();
2112 case 89:
2113 if (lookahead == 'r') ADVANCE(118);
2114 END_STATE();
2115 case 90:
2116 ACCEPT_TOKEN(anon_sym_xor);
2117 END_STATE();
2118 case 91:
2119 if (lookahead == 't') ADVANCE(119);
2120 END_STATE();
2121 case 92:
2122 if (lookahead == 'y') ADVANCE(120);
2123 END_STATE();
2124 case 93:
2125 ACCEPT_TOKEN(anon_sym_bool);
2126 END_STATE();
2127 case 94:
2128 if (lookahead == 't') ADVANCE(121);
2129 END_STATE();
2130 case 95:
2131 ACCEPT_TOKEN(anon_sym_diff);
2132 END_STATE();
2133 case 96:
2134 ACCEPT_TOKEN(anon_sym_else);
2135 if (lookahead == 'i') ADVANCE(122);
2136 END_STATE();
2137 case 97:
2138 if (lookahead == 'f') ADVANCE(123);
2139 END_STATE();
2140 case 98:
2141 ACCEPT_TOKEN(anon_sym_enum);
2142 END_STATE();
2143 case 99:
2144 if (lookahead == 'e') ADVANCE(124);
2145 END_STATE();
2146 case 100:
2147 if (lookahead == 't') ADVANCE(125);
2148 END_STATE();
2149 case 101:
2150 if (lookahead == 't') ADVANCE(126);
2151 END_STATE();
2152 case 102:
2153 if (lookahead == 'u') ADVANCE(127);
2154 END_STATE();
2155 case 103:
2156 if (lookahead == 'r') ADVANCE(128);
2157 END_STATE();
2158 case 104:
2159 if (lookahead == 'm') ADVANCE(129);
2160 END_STATE();
2161 case 105:
2162 if (lookahead == 'm') ADVANCE(130);
2163 END_STATE();
2164 case 106:
2165 if (lookahead == 'u') ADVANCE(131);
2166 END_STATE();
2167 case 107:
2168 if (lookahead == 'i') ADVANCE(132);
2169 END_STATE();
2170 case 108:
2171 if (lookahead == 's') ADVANCE(133);
2172 END_STATE();
2173 case 109:
2174 if (lookahead == 'e') ADVANCE(134);
2175 END_STATE();
2176 case 110:
2177 if (lookahead == 'n') ADVANCE(135);
2178 END_STATE();
2179 case 111:
2180 if (lookahead == 'e') ADVANCE(136);
2181 END_STATE();
2182 case 112:
2183 if (lookahead == 'r') ADVANCE(137);
2184 END_STATE();
2185 case 113:
2186 if (lookahead == 'i') ADVANCE(138);
2187 END_STATE();
2188 case 114:
2189 ACCEPT_TOKEN(anon_sym_test);
2190 END_STATE();
2191 case 115:
2192 ACCEPT_TOKEN(anon_sym_then);
2193 END_STATE();
2194 case 116:
2195 ACCEPT_TOKEN(anon_sym_true);
2196 END_STATE();
2197 case 117:
2198 if (lookahead == 'n') ADVANCE(139);
2199 END_STATE();
2200 case 118:
2201 if (lookahead == 'e') ADVANCE(140);
2202 END_STATE();
2203 case 119:
2204 if (lookahead == 'a') ADVANCE(141);
2205 END_STATE();
2206 case 120:
2207 ACCEPT_TOKEN(anon_sym_array);
2208 END_STATE();
2209 case 121:
2210 if (lookahead == 'r') ADVANCE(142);
2211 END_STATE();
2212 case 122:
2213 if (lookahead == 'f') ADVANCE(143);
2214 END_STATE();
2215 case 123:
2216 ACCEPT_TOKEN(anon_sym_endif);
2217 END_STATE();
2218 case 124:
2219 ACCEPT_TOKEN(anon_sym_false);
2220 END_STATE();
2221 case 125:
2222 ACCEPT_TOKEN(anon_sym_float);
2223 END_STATE();
2224 case 126:
2225 if (lookahead == 'i') ADVANCE(144);
2226 END_STATE();
2227 case 127:
2228 if (lookahead == 'd') ADVANCE(145);
2229 END_STATE();
2230 case 128:
2231 if (lookahead == 's') ADVANCE(146);
2232 END_STATE();
2233 case 129:
2234 if (lookahead == 'i') ADVANCE(147);
2235 END_STATE();
2236 case 130:
2237 if (lookahead == 'i') ADVANCE(148);
2238 END_STATE();
2239 case 131:
2240 if (lookahead == 't') ADVANCE(149);
2241 END_STATE();
2242 case 132:
2243 if (lookahead == 'c') ADVANCE(150);
2244 END_STATE();
2245 case 133:
2246 if (lookahead == 'f') ADVANCE(151);
2247 END_STATE();
2248 case 134:
2249 ACCEPT_TOKEN(anon_sym_solve);
2250 END_STATE();
2251 case 135:
2252 if (lookahead == 'g') ADVANCE(152);
2253 END_STATE();
2254 case 136:
2255 if (lookahead == 't') ADVANCE(153);
2256 END_STATE();
2257 case 137:
2258 if (lookahead == 's') ADVANCE(154);
2259 END_STATE();
2260 case 138:
2261 if (lookahead == 'f') ADVANCE(155);
2262 END_STATE();
2263 case 139:
2264 ACCEPT_TOKEN(anon_sym_union);
2265 END_STATE();
2266 case 140:
2267 ACCEPT_TOKEN(anon_sym_where);
2268 END_STATE();
2269 case 141:
2270 if (lookahead == 't') ADVANCE(156);
2271 END_STATE();
2272 case 142:
2273 if (lookahead == 'a') ADVANCE(157);
2274 END_STATE();
2275 case 143:
2276 ACCEPT_TOKEN(anon_sym_elseif);
2277 END_STATE();
2278 case 144:
2279 if (lookahead == 'o') ADVANCE(158);
2280 END_STATE();
2281 case 145:
2282 if (lookahead == 'e') ADVANCE(159);
2283 END_STATE();
2284 case 146:
2285 if (lookahead == 'e') ADVANCE(160);
2286 END_STATE();
2287 case 147:
2288 if (lookahead == 'z') ADVANCE(161);
2289 END_STATE();
2290 case 148:
2291 if (lookahead == 'z') ADVANCE(162);
2292 END_STATE();
2293 case 149:
2294 ACCEPT_TOKEN(anon_sym_output);
2295 END_STATE();
2296 case 150:
2297 if (lookahead == 'a') ADVANCE(163);
2298 END_STATE();
2299 case 151:
2300 if (lookahead == 'y') ADVANCE(164);
2301 END_STATE();
2302 case 152:
2303 ACCEPT_TOKEN(anon_sym_string);
2304 END_STATE();
2305 case 153:
2306 ACCEPT_TOKEN(anon_sym_subset);
2307 END_STATE();
2308 case 154:
2309 if (lookahead == 'e') ADVANCE(165);
2310 END_STATE();
2311 case 155:
2312 if (lookahead == 'f') ADVANCE(166);
2313 END_STATE();
2314 case 156:
2315 if (lookahead == 'i') ADVANCE(167);
2316 END_STATE();
2317 case 157:
2318 if (lookahead == 'i') ADVANCE(168);
2319 END_STATE();
2320 case 158:
2321 if (lookahead == 'n') ADVANCE(169);
2322 END_STATE();
2323 case 159:
2324 ACCEPT_TOKEN(anon_sym_include);
2325 END_STATE();
2326 case 160:
2327 if (lookahead == 'c') ADVANCE(170);
2328 END_STATE();
2329 case 161:
2330 if (lookahead == 'e') ADVANCE(171);
2331 END_STATE();
2332 case 162:
2333 if (lookahead == 'e') ADVANCE(172);
2334 END_STATE();
2335 case 163:
2336 if (lookahead == 't') ADVANCE(173);
2337 END_STATE();
2338 case 164:
2339 ACCEPT_TOKEN(anon_sym_satisfy);
2340 END_STATE();
2341 case 165:
2342 if (lookahead == 't') ADVANCE(174);
2343 END_STATE();
2344 case 166:
2345 ACCEPT_TOKEN(anon_sym_symdiff);
2346 END_STATE();
2347 case 167:
2348 if (lookahead == 'o') ADVANCE(175);
2349 END_STATE();
2350 case 168:
2351 if (lookahead == 'n') ADVANCE(176);
2352 END_STATE();
2353 case 169:
2354 ACCEPT_TOKEN(anon_sym_function);
2355 END_STATE();
2356 case 170:
2357 if (lookahead == 't') ADVANCE(177);
2358 END_STATE();
2359 case 171:
2360 ACCEPT_TOKEN(anon_sym_maximize);
2361 END_STATE();
2362 case 172:
2363 ACCEPT_TOKEN(anon_sym_minimize);
2364 END_STATE();
2365 case 173:
2366 if (lookahead == 'e') ADVANCE(178);
2367 END_STATE();
2368 case 174:
2369 ACCEPT_TOKEN(anon_sym_superset);
2370 END_STATE();
2371 case 175:
2372 if (lookahead == 'n') ADVANCE(179);
2373 END_STATE();
2374 case 176:
2375 if (lookahead == 't') ADVANCE(180);
2376 END_STATE();
2377 case 177:
2378 ACCEPT_TOKEN(anon_sym_intersect);
2379 END_STATE();
2380 case 178:
2381 ACCEPT_TOKEN(anon_sym_predicate);
2382 END_STATE();
2383 case 179:
2384 ACCEPT_TOKEN(anon_sym_annotation);
2385 END_STATE();
2386 case 180:
2387 ACCEPT_TOKEN(anon_sym_constraint);
2388 END_STATE();
2389 default:
2390 return false;
2391 }
2392}
2393
2394static TSLexMode ts_lex_modes[STATE_COUNT] = {
2395 [0] = {.lex_state = 0},
2396 [1] = {.lex_state = 34},
2397 [2] = {.lex_state = 34},
2398 [3] = {.lex_state = 34},
2399 [4] = {.lex_state = 34},
2400 [5] = {.lex_state = 34},
2401 [6] = {.lex_state = 34},
2402 [7] = {.lex_state = 34},
2403 [8] = {.lex_state = 34},
2404 [9] = {.lex_state = 34},
2405 [10] = {.lex_state = 34},
2406 [11] = {.lex_state = 34},
2407 [12] = {.lex_state = 34},
2408 [13] = {.lex_state = 34},
2409 [14] = {.lex_state = 33},
2410 [15] = {.lex_state = 33},
2411 [16] = {.lex_state = 33},
2412 [17] = {.lex_state = 33},
2413 [18] = {.lex_state = 33},
2414 [19] = {.lex_state = 33},
2415 [20] = {.lex_state = 33},
2416 [21] = {.lex_state = 34},
2417 [22] = {.lex_state = 33},
2418 [23] = {.lex_state = 33},
2419 [24] = {.lex_state = 33},
2420 [25] = {.lex_state = 33},
2421 [26] = {.lex_state = 33},
2422 [27] = {.lex_state = 33},
2423 [28] = {.lex_state = 33},
2424 [29] = {.lex_state = 33},
2425 [30] = {.lex_state = 33},
2426 [31] = {.lex_state = 33},
2427 [32] = {.lex_state = 33},
2428 [33] = {.lex_state = 33},
2429 [34] = {.lex_state = 33},
2430 [35] = {.lex_state = 33},
2431 [36] = {.lex_state = 33},
2432 [37] = {.lex_state = 33},
2433 [38] = {.lex_state = 33},
2434 [39] = {.lex_state = 33},
2435 [40] = {.lex_state = 33},
2436 [41] = {.lex_state = 33},
2437 [42] = {.lex_state = 33},
2438 [43] = {.lex_state = 33},
2439 [44] = {.lex_state = 33},
2440 [45] = {.lex_state = 33},
2441 [46] = {.lex_state = 33},
2442 [47] = {.lex_state = 34},
2443 [48] = {.lex_state = 33},
2444 [49] = {.lex_state = 33},
2445 [50] = {.lex_state = 33},
2446 [51] = {.lex_state = 33},
2447 [52] = {.lex_state = 33},
2448 [53] = {.lex_state = 33},
2449 [54] = {.lex_state = 33},
2450 [55] = {.lex_state = 33},
2451 [56] = {.lex_state = 33},
2452 [57] = {.lex_state = 33},
2453 [58] = {.lex_state = 33},
2454 [59] = {.lex_state = 33},
2455 [60] = {.lex_state = 33},
2456 [61] = {.lex_state = 33},
2457 [62] = {.lex_state = 33},
2458 [63] = {.lex_state = 33},
2459 [64] = {.lex_state = 33},
2460 [65] = {.lex_state = 34},
2461 [66] = {.lex_state = 34},
2462 [67] = {.lex_state = 34},
2463 [68] = {.lex_state = 34},
2464 [69] = {.lex_state = 34},
2465 [70] = {.lex_state = 34},
2466 [71] = {.lex_state = 34},
2467 [72] = {.lex_state = 34},
2468 [73] = {.lex_state = 34},
2469 [74] = {.lex_state = 34},
2470 [75] = {.lex_state = 33},
2471 [76] = {.lex_state = 33},
2472 [77] = {.lex_state = 33},
2473 [78] = {.lex_state = 33},
2474 [79] = {.lex_state = 33},
2475 [80] = {.lex_state = 33},
2476 [81] = {.lex_state = 34},
2477 [82] = {.lex_state = 33},
2478 [83] = {.lex_state = 33},
2479 [84] = {.lex_state = 34},
2480 [85] = {.lex_state = 33},
2481 [86] = {.lex_state = 33},
2482 [87] = {.lex_state = 33},
2483 [88] = {.lex_state = 33},
2484 [89] = {.lex_state = 33},
2485 [90] = {.lex_state = 33},
2486 [91] = {.lex_state = 33},
2487 [92] = {.lex_state = 33},
2488 [93] = {.lex_state = 34},
2489 [94] = {.lex_state = 34},
2490 [95] = {.lex_state = 34},
2491 [96] = {.lex_state = 34},
2492 [97] = {.lex_state = 33},
2493 [98] = {.lex_state = 33},
2494 [99] = {.lex_state = 33},
2495 [100] = {.lex_state = 34},
2496 [101] = {.lex_state = 33},
2497 [102] = {.lex_state = 33},
2498 [103] = {.lex_state = 33},
2499 [104] = {.lex_state = 33},
2500 [105] = {.lex_state = 33},
2501 [106] = {.lex_state = 33},
2502 [107] = {.lex_state = 33},
2503 [108] = {.lex_state = 33},
2504 [109] = {.lex_state = 33},
2505 [110] = {.lex_state = 33},
2506 [111] = {.lex_state = 33},
2507 [112] = {.lex_state = 33},
2508 [113] = {.lex_state = 33},
2509 [114] = {.lex_state = 33},
2510 [115] = {.lex_state = 33},
2511 [116] = {.lex_state = 33},
2512 [117] = {.lex_state = 34},
2513 [118] = {.lex_state = 34},
2514 [119] = {.lex_state = 34},
2515 [120] = {.lex_state = 34},
2516 [121] = {.lex_state = 34},
2517 [122] = {.lex_state = 34},
2518 [123] = {.lex_state = 34},
2519 [124] = {.lex_state = 33},
2520 [125] = {.lex_state = 34},
2521 [126] = {.lex_state = 34},
2522 [127] = {.lex_state = 34},
2523 [128] = {.lex_state = 34},
2524 [129] = {.lex_state = 34},
2525 [130] = {.lex_state = 34},
2526 [131] = {.lex_state = 33},
2527 [132] = {.lex_state = 33},
2528 [133] = {.lex_state = 34},
2529 [134] = {.lex_state = 34},
2530 [135] = {.lex_state = 34},
2531 [136] = {.lex_state = 34},
2532 [137] = {.lex_state = 34},
2533 [138] = {.lex_state = 34},
2534 [139] = {.lex_state = 34},
2535 [140] = {.lex_state = 34},
2536 [141] = {.lex_state = 34},
2537 [142] = {.lex_state = 34},
2538 [143] = {.lex_state = 34},
2539 [144] = {.lex_state = 34},
2540 [145] = {.lex_state = 34},
2541 [146] = {.lex_state = 34},
2542 [147] = {.lex_state = 34},
2543 [148] = {.lex_state = 34},
2544 [149] = {.lex_state = 34},
2545 [150] = {.lex_state = 34},
2546 [151] = {.lex_state = 34},
2547 [152] = {.lex_state = 34},
2548 [153] = {.lex_state = 33},
2549 [154] = {.lex_state = 33},
2550 [155] = {.lex_state = 33},
2551 [156] = {.lex_state = 34},
2552 [157] = {.lex_state = 33},
2553 [158] = {.lex_state = 34},
2554 [159] = {.lex_state = 34},
2555 [160] = {.lex_state = 33},
2556 [161] = {.lex_state = 34},
2557 [162] = {.lex_state = 34},
2558 [163] = {.lex_state = 34},
2559 [164] = {.lex_state = 34},
2560 [165] = {.lex_state = 34},
2561 [166] = {.lex_state = 34},
2562 [167] = {.lex_state = 34},
2563 [168] = {.lex_state = 33},
2564 [169] = {.lex_state = 33},
2565 [170] = {.lex_state = 34},
2566 [171] = {.lex_state = 34},
2567 [172] = {.lex_state = 34},
2568 [173] = {.lex_state = 34},
2569 [174] = {.lex_state = 34},
2570 [175] = {.lex_state = 34},
2571 [176] = {.lex_state = 0},
2572 [177] = {.lex_state = 0},
2573 [178] = {.lex_state = 1},
2574 [179] = {.lex_state = 0},
2575 [180] = {.lex_state = 1},
2576 [181] = {.lex_state = 0},
2577 [182] = {.lex_state = 0},
2578 [183] = {.lex_state = 0},
2579 [184] = {.lex_state = 0},
2580 [185] = {.lex_state = 1},
2581 [186] = {.lex_state = 1},
2582 [187] = {.lex_state = 2},
2583 [188] = {.lex_state = 0},
2584 [189] = {.lex_state = 0},
2585 [190] = {.lex_state = 0},
2586 [191] = {.lex_state = 0},
2587 [192] = {.lex_state = 0},
2588 [193] = {.lex_state = 0},
2589 [194] = {.lex_state = 0},
2590 [195] = {.lex_state = 0},
2591 [196] = {.lex_state = 0},
2592 [197] = {.lex_state = 0},
2593 [198] = {.lex_state = 0},
2594 [199] = {.lex_state = 0},
2595 [200] = {.lex_state = 2},
2596 [201] = {.lex_state = 0},
2597 [202] = {.lex_state = 0},
2598 [203] = {.lex_state = 0},
2599 [204] = {.lex_state = 0},
2600 [205] = {.lex_state = 2},
2601 [206] = {.lex_state = 0},
2602 [207] = {.lex_state = 0},
2603 [208] = {.lex_state = 0},
2604 [209] = {.lex_state = 0},
2605 [210] = {.lex_state = 0},
2606 [211] = {.lex_state = 0},
2607 [212] = {.lex_state = 0},
2608 [213] = {.lex_state = 0},
2609 [214] = {.lex_state = 0},
2610 [215] = {.lex_state = 0},
2611 [216] = {.lex_state = 0},
2612 [217] = {.lex_state = 0},
2613 [218] = {.lex_state = 0},
2614 [219] = {.lex_state = 0},
2615 [220] = {.lex_state = 0},
2616 [221] = {.lex_state = 0},
2617 [222] = {.lex_state = 0},
2618 [223] = {.lex_state = 0},
2619 [224] = {.lex_state = 0},
2620 [225] = {.lex_state = 0},
2621 [226] = {.lex_state = 0},
2622 [227] = {.lex_state = 0},
2623 [228] = {.lex_state = 0},
2624 [229] = {.lex_state = 0},
2625 [230] = {.lex_state = 0},
2626 [231] = {.lex_state = 0},
2627 [232] = {.lex_state = 0},
2628 [233] = {.lex_state = 0},
2629 [234] = {.lex_state = 0},
2630 [235] = {.lex_state = 0},
2631 [236] = {.lex_state = 0},
2632 [237] = {.lex_state = 0},
2633 [238] = {.lex_state = 0},
2634 [239] = {.lex_state = 0},
2635 [240] = {.lex_state = 0},
2636 [241] = {.lex_state = 0},
2637 [242] = {.lex_state = 0},
2638 [243] = {.lex_state = 0},
2639 [244] = {.lex_state = 0},
2640 [245] = {.lex_state = 0},
2641 [246] = {.lex_state = 0},
2642 [247] = {.lex_state = 0},
2643 [248] = {.lex_state = 0},
2644 [249] = {.lex_state = 0},
2645 [250] = {.lex_state = 0},
2646 [251] = {.lex_state = 0},
2647 [252] = {.lex_state = 0},
2648 [253] = {.lex_state = 0},
2649 [254] = {.lex_state = 0},
2650 [255] = {.lex_state = 0},
2651 [256] = {.lex_state = 0},
2652 [257] = {.lex_state = 0},
2653 [258] = {.lex_state = 0},
2654 [259] = {.lex_state = 0},
2655 [260] = {.lex_state = 0},
2656 [261] = {.lex_state = 0},
2657 [262] = {.lex_state = 0},
2658 [263] = {.lex_state = 0},
2659 [264] = {.lex_state = 0},
2660 [265] = {.lex_state = 0},
2661 [266] = {.lex_state = 0},
2662 [267] = {.lex_state = 0},
2663 [268] = {.lex_state = 0},
2664 [269] = {.lex_state = 0},
2665 [270] = {.lex_state = 0},
2666 [271] = {.lex_state = 0},
2667 [272] = {.lex_state = 0},
2668 [273] = {.lex_state = 0},
2669 [274] = {.lex_state = 0},
2670 [275] = {.lex_state = 0},
2671 [276] = {.lex_state = 0},
2672 [277] = {.lex_state = 0},
2673 [278] = {.lex_state = 0},
2674 [279] = {.lex_state = 0},
2675 [280] = {.lex_state = 0},
2676 [281] = {.lex_state = 0},
2677 [282] = {.lex_state = 0},
2678 [283] = {.lex_state = 0},
2679 [284] = {.lex_state = 0},
2680 [285] = {.lex_state = 0},
2681 [286] = {.lex_state = 0},
2682 [287] = {.lex_state = 0},
2683 [288] = {.lex_state = 0},
2684 [289] = {.lex_state = 0},
2685 [290] = {.lex_state = 0},
2686 [291] = {.lex_state = 0},
2687 [292] = {.lex_state = 0},
2688 [293] = {.lex_state = 0},
2689 [294] = {.lex_state = 0},
2690 [295] = {.lex_state = 0},
2691 [296] = {.lex_state = 0},
2692 [297] = {.lex_state = 0},
2693 [298] = {.lex_state = 0},
2694 [299] = {.lex_state = 0},
2695 [300] = {.lex_state = 0},
2696 [301] = {.lex_state = 0},
2697 [302] = {.lex_state = 0},
2698 [303] = {.lex_state = 0},
2699 [304] = {.lex_state = 0},
2700 [305] = {.lex_state = 0},
2701 [306] = {.lex_state = 0},
2702 [307] = {.lex_state = 0},
2703};
2704
2705static uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
2706 [0] = {
2707 [ts_builtin_sym_end] = ACTIONS(1),
2708 [sym_identifier] = ACTIONS(1),
2709 [anon_sym_SEMI] = ACTIONS(1),
2710 [anon_sym_annotation] = ACTIONS(1),
2711 [anon_sym_EQ] = ACTIONS(1),
2712 [anon_sym_constraint] = ACTIONS(1),
2713 [anon_sym_COLON] = ACTIONS(1),
2714 [anon_sym_enum] = ACTIONS(1),
2715 [anon_sym_LBRACE] = ACTIONS(1),
2716 [anon_sym_COMMA] = ACTIONS(1),
2717 [anon_sym_RBRACE] = ACTIONS(1),
2718 [anon_sym_function] = ACTIONS(1),
2719 [anon_sym_solve] = ACTIONS(1),
2720 [anon_sym_satisfy] = ACTIONS(1),
2721 [anon_sym_maximize] = ACTIONS(1),
2722 [anon_sym_minimize] = ACTIONS(1),
2723 [anon_sym_include] = ACTIONS(1),
2724 [anon_sym_output] = ACTIONS(1),
2725 [anon_sym_predicate] = ACTIONS(1),
2726 [anon_sym_test] = ACTIONS(1),
2727 [anon_sym_COLON_COLON] = ACTIONS(1),
2728 [anon_sym_LPAREN] = ACTIONS(1),
2729 [anon_sym_RPAREN] = ACTIONS(1),
2730 [anon_sym_LBRACK] = ACTIONS(1),
2731 [anon_sym_PIPE] = ACTIONS(1),
2732 [anon_sym_RBRACK] = ACTIONS(1),
2733 [anon_sym_in] = ACTIONS(1),
2734 [anon_sym_where] = ACTIONS(1),
2735 [anon_sym_if] = ACTIONS(1),
2736 [anon_sym_then] = ACTIONS(1),
2737 [anon_sym_elseif] = ACTIONS(1),
2738 [anon_sym_else] = ACTIONS(1),
2739 [anon_sym_endif] = ACTIONS(1),
2740 [anon_sym_LT_DASH_GT] = ACTIONS(1),
2741 [anon_sym_DASH_GT] = ACTIONS(1),
2742 [anon_sym_LT_DASH] = ACTIONS(1),
2743 [anon_sym_BSLASH_SLASH] = ACTIONS(1),
2744 [anon_sym_xor] = ACTIONS(1),
2745 [anon_sym_SLASH_BSLASH] = ACTIONS(1),
2746 [anon_sym_EQ_EQ] = ACTIONS(1),
2747 [anon_sym_BANG_EQ] = ACTIONS(1),
2748 [anon_sym_LT] = ACTIONS(1),
2749 [anon_sym_LT_EQ] = ACTIONS(1),
2750 [anon_sym_GT] = ACTIONS(1),
2751 [anon_sym_GT_EQ] = ACTIONS(1),
2752 [anon_sym_subset] = ACTIONS(1),
2753 [anon_sym_superset] = ACTIONS(1),
2754 [anon_sym_union] = ACTIONS(1),
2755 [anon_sym_diff] = ACTIONS(1),
2756 [anon_sym_symdiff] = ACTIONS(1),
2757 [anon_sym_intersect] = ACTIONS(1),
2758 [anon_sym_DOT_DOT] = ACTIONS(1),
2759 [anon_sym_PLUS] = ACTIONS(1),
2760 [anon_sym_DASH] = ACTIONS(1),
2761 [anon_sym_PLUS_PLUS] = ACTIONS(1),
2762 [anon_sym_STAR] = ACTIONS(1),
2763 [anon_sym_SLASH] = ACTIONS(1),
2764 [anon_sym_div] = ACTIONS(1),
2765 [anon_sym_mod] = ACTIONS(1),
2766 [anon_sym_CARET] = ACTIONS(1),
2767 [anon_sym_let] = ACTIONS(1),
2768 [anon_sym_not] = ACTIONS(1),
2769 [anon_sym_] = ACTIONS(1),
2770 [anon_sym_DQUOTE] = ACTIONS(1),
2771 [anon_sym_BSLASH_LPAREN] = ACTIONS(1),
2772 [anon_sym_array] = ACTIONS(1),
2773 [anon_sym_of] = ACTIONS(1),
2774 [anon_sym_var] = ACTIONS(1),
2775 [anon_sym_par] = ACTIONS(1),
2776 [anon_sym_opt] = ACTIONS(1),
2777 [anon_sym_set] = ACTIONS(1),
2778 [anon_sym_ann] = ACTIONS(1),
2779 [anon_sym_bool] = ACTIONS(1),
2780 [anon_sym_float] = ACTIONS(1),
2781 [anon_sym_int] = ACTIONS(1),
2782 [anon_sym_string] = ACTIONS(1),
2783 [sym_absent] = ACTIONS(1),
2784 [anon_sym_true] = ACTIONS(1),
2785 [anon_sym_false] = ACTIONS(1),
2786 [sym_float_literal] = ACTIONS(1),
2787 [sym_integer_literal] = ACTIONS(1),
2788 [sym_escape_sequence] = ACTIONS(1),
2789 [sym_line_comment] = ACTIONS(3),
2790 [sym_block_comment] = ACTIONS(3),
2791 },
2792 [1] = {
2793 [sym_source_file] = STATE(276),
2794 [sym__item] = STATE(261),
2795 [sym_annotation] = STATE(262),
2796 [sym_assignment] = STATE(262),
2797 [sym_constraint] = STATE(262),
2798 [sym_declaration] = STATE(262),
2799 [sym_enumeration] = STATE(262),
2800 [sym_function_item] = STATE(262),
2801 [sym_goal] = STATE(262),
2802 [sym_include] = STATE(262),
2803 [sym_output] = STATE(262),
2804 [sym_predicate] = STATE(262),
2805 [sym__expression] = STATE(80),
2806 [sym_parenthesised_expression] = STATE(32),
2807 [sym_array_comprehension] = STATE(32),
2808 [sym_call] = STATE(32),
2809 [sym_generator_call] = STATE(32),
2810 [sym_if_then_else] = STATE(32),
2811 [sym_indexed_access] = STATE(32),
2812 [sym_infix_operator] = STATE(32),
2813 [sym_let_expression] = STATE(32),
2814 [sym_prefix_operator] = STATE(32),
2815 [sym_set_comprehension] = STATE(32),
2816 [sym_string_interpolation] = STATE(32),
2817 [sym__type] = STATE(288),
2818 [sym_array_type] = STATE(229),
2819 [sym_type_base] = STATE(229),
2820 [sym_primitive_type] = STATE(192),
2821 [sym__literal] = STATE(32),
2822 [sym_array_literal] = STATE(32),
2823 [sym_boolean_literal] = STATE(32),
2824 [sym_set_literal] = STATE(32),
2825 [sym_string_literal] = STATE(32),
2826 [aux_sym_source_file_repeat1] = STATE(3),
2827 [ts_builtin_sym_end] = ACTIONS(5),
2828 [sym_identifier] = ACTIONS(7),
2829 [anon_sym_annotation] = ACTIONS(9),
2830 [anon_sym_constraint] = ACTIONS(11),
2831 [anon_sym_enum] = ACTIONS(13),
2832 [anon_sym_LBRACE] = ACTIONS(15),
2833 [anon_sym_function] = ACTIONS(17),
2834 [anon_sym_solve] = ACTIONS(19),
2835 [anon_sym_include] = ACTIONS(21),
2836 [anon_sym_output] = ACTIONS(23),
2837 [anon_sym_predicate] = ACTIONS(25),
2838 [anon_sym_test] = ACTIONS(25),
2839 [anon_sym_LPAREN] = ACTIONS(27),
2840 [anon_sym_LBRACK] = ACTIONS(29),
2841 [anon_sym_if] = ACTIONS(31),
2842 [anon_sym_DASH] = ACTIONS(33),
2843 [anon_sym_let] = ACTIONS(35),
2844 [anon_sym_not] = ACTIONS(37),
2845 [anon_sym_] = ACTIONS(33),
2846 [anon_sym_DQUOTE] = ACTIONS(39),
2847 [anon_sym_array] = ACTIONS(41),
2848 [anon_sym_var] = ACTIONS(43),
2849 [anon_sym_par] = ACTIONS(43),
2850 [anon_sym_opt] = ACTIONS(45),
2851 [anon_sym_set] = ACTIONS(47),
2852 [anon_sym_ann] = ACTIONS(49),
2853 [anon_sym_bool] = ACTIONS(49),
2854 [anon_sym_float] = ACTIONS(49),
2855 [anon_sym_int] = ACTIONS(49),
2856 [anon_sym_string] = ACTIONS(49),
2857 [sym_absent] = ACTIONS(51),
2858 [anon_sym_true] = ACTIONS(53),
2859 [anon_sym_false] = ACTIONS(53),
2860 [sym_float_literal] = ACTIONS(51),
2861 [sym_integer_literal] = ACTIONS(55),
2862 [sym_line_comment] = ACTIONS(3),
2863 [sym_block_comment] = ACTIONS(3),
2864 },
2865 [2] = {
2866 [sym__item] = STATE(287),
2867 [sym_annotation] = STATE(262),
2868 [sym_assignment] = STATE(262),
2869 [sym_constraint] = STATE(262),
2870 [sym_declaration] = STATE(262),
2871 [sym_enumeration] = STATE(262),
2872 [sym_function_item] = STATE(262),
2873 [sym_goal] = STATE(262),
2874 [sym_include] = STATE(262),
2875 [sym_output] = STATE(262),
2876 [sym_predicate] = STATE(262),
2877 [sym__expression] = STATE(80),
2878 [sym_parenthesised_expression] = STATE(32),
2879 [sym_array_comprehension] = STATE(32),
2880 [sym_call] = STATE(32),
2881 [sym_generator_call] = STATE(32),
2882 [sym_if_then_else] = STATE(32),
2883 [sym_indexed_access] = STATE(32),
2884 [sym_infix_operator] = STATE(32),
2885 [sym_let_expression] = STATE(32),
2886 [sym_prefix_operator] = STATE(32),
2887 [sym_set_comprehension] = STATE(32),
2888 [sym_string_interpolation] = STATE(32),
2889 [sym__type] = STATE(288),
2890 [sym_array_type] = STATE(229),
2891 [sym_type_base] = STATE(229),
2892 [sym_primitive_type] = STATE(192),
2893 [sym__literal] = STATE(32),
2894 [sym_array_literal] = STATE(32),
2895 [sym_boolean_literal] = STATE(32),
2896 [sym_set_literal] = STATE(32),
2897 [sym_string_literal] = STATE(32),
2898 [aux_sym_source_file_repeat1] = STATE(2),
2899 [ts_builtin_sym_end] = ACTIONS(57),
2900 [sym_identifier] = ACTIONS(59),
2901 [anon_sym_annotation] = ACTIONS(62),
2902 [anon_sym_constraint] = ACTIONS(65),
2903 [anon_sym_enum] = ACTIONS(68),
2904 [anon_sym_LBRACE] = ACTIONS(71),
2905 [anon_sym_function] = ACTIONS(74),
2906 [anon_sym_solve] = ACTIONS(77),
2907 [anon_sym_include] = ACTIONS(80),
2908 [anon_sym_output] = ACTIONS(83),
2909 [anon_sym_predicate] = ACTIONS(86),
2910 [anon_sym_test] = ACTIONS(86),
2911 [anon_sym_LPAREN] = ACTIONS(89),
2912 [anon_sym_LBRACK] = ACTIONS(92),
2913 [anon_sym_if] = ACTIONS(95),
2914 [anon_sym_DASH] = ACTIONS(98),
2915 [anon_sym_let] = ACTIONS(101),
2916 [anon_sym_not] = ACTIONS(104),
2917 [anon_sym_] = ACTIONS(98),
2918 [anon_sym_DQUOTE] = ACTIONS(107),
2919 [anon_sym_array] = ACTIONS(110),
2920 [anon_sym_var] = ACTIONS(113),
2921 [anon_sym_par] = ACTIONS(113),
2922 [anon_sym_opt] = ACTIONS(116),
2923 [anon_sym_set] = ACTIONS(119),
2924 [anon_sym_ann] = ACTIONS(122),
2925 [anon_sym_bool] = ACTIONS(122),
2926 [anon_sym_float] = ACTIONS(122),
2927 [anon_sym_int] = ACTIONS(122),
2928 [anon_sym_string] = ACTIONS(122),
2929 [sym_absent] = ACTIONS(125),
2930 [anon_sym_true] = ACTIONS(128),
2931 [anon_sym_false] = ACTIONS(128),
2932 [sym_float_literal] = ACTIONS(125),
2933 [sym_integer_literal] = ACTIONS(131),
2934 [sym_line_comment] = ACTIONS(3),
2935 [sym_block_comment] = ACTIONS(3),
2936 },
2937 [3] = {
2938 [sym__item] = STATE(258),
2939 [sym_annotation] = STATE(262),
2940 [sym_assignment] = STATE(262),
2941 [sym_constraint] = STATE(262),
2942 [sym_declaration] = STATE(262),
2943 [sym_enumeration] = STATE(262),
2944 [sym_function_item] = STATE(262),
2945 [sym_goal] = STATE(262),
2946 [sym_include] = STATE(262),
2947 [sym_output] = STATE(262),
2948 [sym_predicate] = STATE(262),
2949 [sym__expression] = STATE(80),
2950 [sym_parenthesised_expression] = STATE(32),
2951 [sym_array_comprehension] = STATE(32),
2952 [sym_call] = STATE(32),
2953 [sym_generator_call] = STATE(32),
2954 [sym_if_then_else] = STATE(32),
2955 [sym_indexed_access] = STATE(32),
2956 [sym_infix_operator] = STATE(32),
2957 [sym_let_expression] = STATE(32),
2958 [sym_prefix_operator] = STATE(32),
2959 [sym_set_comprehension] = STATE(32),
2960 [sym_string_interpolation] = STATE(32),
2961 [sym__type] = STATE(288),
2962 [sym_array_type] = STATE(229),
2963 [sym_type_base] = STATE(229),
2964 [sym_primitive_type] = STATE(192),
2965 [sym__literal] = STATE(32),
2966 [sym_array_literal] = STATE(32),
2967 [sym_boolean_literal] = STATE(32),
2968 [sym_set_literal] = STATE(32),
2969 [sym_string_literal] = STATE(32),
2970 [aux_sym_source_file_repeat1] = STATE(2),
2971 [ts_builtin_sym_end] = ACTIONS(134),
2972 [sym_identifier] = ACTIONS(7),
2973 [anon_sym_annotation] = ACTIONS(9),
2974 [anon_sym_constraint] = ACTIONS(11),
2975 [anon_sym_enum] = ACTIONS(13),
2976 [anon_sym_LBRACE] = ACTIONS(15),
2977 [anon_sym_function] = ACTIONS(17),
2978 [anon_sym_solve] = ACTIONS(19),
2979 [anon_sym_include] = ACTIONS(21),
2980 [anon_sym_output] = ACTIONS(23),
2981 [anon_sym_predicate] = ACTIONS(25),
2982 [anon_sym_test] = ACTIONS(25),
2983 [anon_sym_LPAREN] = ACTIONS(27),
2984 [anon_sym_LBRACK] = ACTIONS(29),
2985 [anon_sym_if] = ACTIONS(31),
2986 [anon_sym_DASH] = ACTIONS(33),
2987 [anon_sym_let] = ACTIONS(35),
2988 [anon_sym_not] = ACTIONS(37),
2989 [anon_sym_] = ACTIONS(33),
2990 [anon_sym_DQUOTE] = ACTIONS(39),
2991 [anon_sym_array] = ACTIONS(41),
2992 [anon_sym_var] = ACTIONS(43),
2993 [anon_sym_par] = ACTIONS(43),
2994 [anon_sym_opt] = ACTIONS(45),
2995 [anon_sym_set] = ACTIONS(47),
2996 [anon_sym_ann] = ACTIONS(49),
2997 [anon_sym_bool] = ACTIONS(49),
2998 [anon_sym_float] = ACTIONS(49),
2999 [anon_sym_int] = ACTIONS(49),
3000 [anon_sym_string] = ACTIONS(49),
3001 [sym_absent] = ACTIONS(51),
3002 [anon_sym_true] = ACTIONS(53),
3003 [anon_sym_false] = ACTIONS(53),
3004 [sym_float_literal] = ACTIONS(51),
3005 [sym_integer_literal] = ACTIONS(55),
3006 [sym_line_comment] = ACTIONS(3),
3007 [sym_block_comment] = ACTIONS(3),
3008 },
3009};
3010
3011static uint16_t ts_small_parse_table[] = {
3012 [0] = 27,
3013 ACTIONS(136), 1,
3014 sym_identifier,
3015 ACTIONS(139), 1,
3016 anon_sym_constraint,
3017 ACTIONS(142), 1,
3018 anon_sym_LBRACE,
3019 ACTIONS(145), 1,
3020 anon_sym_RBRACE,
3021 ACTIONS(147), 1,
3022 anon_sym_LPAREN,
3023 ACTIONS(150), 1,
3024 anon_sym_LBRACK,
3025 ACTIONS(153), 1,
3026 anon_sym_if,
3027 ACTIONS(159), 1,
3028 anon_sym_let,
3029 ACTIONS(162), 1,
3030 anon_sym_not,
3031 ACTIONS(165), 1,
3032 anon_sym_DQUOTE,
3033 ACTIONS(168), 1,
3034 anon_sym_array,
3035 ACTIONS(174), 1,
3036 anon_sym_opt,
3037 ACTIONS(177), 1,
3038 anon_sym_set,
3039 ACTIONS(189), 1,
3040 sym_integer_literal,
3041 STATE(4), 1,
3042 aux_sym_let_expression_repeat1,
3043 STATE(80), 1,
3044 sym__expression,
3045 STATE(192), 1,
3046 sym_primitive_type,
3047 STATE(288), 1,
3048 sym__type,
3049 ACTIONS(3), 2,
3050 sym_line_comment,
3051 sym_block_comment,
3052 ACTIONS(156), 2,
3053 anon_sym_DASH,
3054 anon_sym_,
3055 ACTIONS(171), 2,
3056 anon_sym_var,
3057 anon_sym_par,
3058 ACTIONS(183), 2,
3059 sym_absent,
3060 sym_float_literal,
3061 ACTIONS(186), 2,
3062 anon_sym_true,
3063 anon_sym_false,
3064 STATE(229), 2,
3065 sym_array_type,
3066 sym_type_base,
3067 STATE(264), 2,
3068 sym_constraint,
3069 sym_declaration,
3070 ACTIONS(180), 5,
3071 anon_sym_ann,
3072 anon_sym_bool,
3073 anon_sym_float,
3074 anon_sym_int,
3075 anon_sym_string,
3076 STATE(32), 16,
3077 sym_parenthesised_expression,
3078 sym_array_comprehension,
3079 sym_call,
3080 sym_generator_call,
3081 sym_if_then_else,
3082 sym_indexed_access,
3083 sym_infix_operator,
3084 sym_let_expression,
3085 sym_prefix_operator,
3086 sym_set_comprehension,
3087 sym_string_interpolation,
3088 sym__literal,
3089 sym_array_literal,
3090 sym_boolean_literal,
3091 sym_set_literal,
3092 sym_string_literal,
3093 [108] = 27,
3094 ACTIONS(11), 1,
3095 anon_sym_constraint,
3096 ACTIONS(15), 1,
3097 anon_sym_LBRACE,
3098 ACTIONS(27), 1,
3099 anon_sym_LPAREN,
3100 ACTIONS(29), 1,
3101 anon_sym_LBRACK,
3102 ACTIONS(31), 1,
3103 anon_sym_if,
3104 ACTIONS(35), 1,
3105 anon_sym_let,
3106 ACTIONS(37), 1,
3107 anon_sym_not,
3108 ACTIONS(39), 1,
3109 anon_sym_DQUOTE,
3110 ACTIONS(41), 1,
3111 anon_sym_array,
3112 ACTIONS(45), 1,
3113 anon_sym_opt,
3114 ACTIONS(47), 1,
3115 anon_sym_set,
3116 ACTIONS(55), 1,
3117 sym_integer_literal,
3118 ACTIONS(192), 1,
3119 sym_identifier,
3120 ACTIONS(194), 1,
3121 anon_sym_RBRACE,
3122 STATE(4), 1,
3123 aux_sym_let_expression_repeat1,
3124 STATE(80), 1,
3125 sym__expression,
3126 STATE(192), 1,
3127 sym_primitive_type,
3128 STATE(288), 1,
3129 sym__type,
3130 ACTIONS(3), 2,
3131 sym_line_comment,
3132 sym_block_comment,
3133 ACTIONS(33), 2,
3134 anon_sym_DASH,
3135 anon_sym_,
3136 ACTIONS(43), 2,
3137 anon_sym_var,
3138 anon_sym_par,
3139 ACTIONS(51), 2,
3140 sym_absent,
3141 sym_float_literal,
3142 ACTIONS(53), 2,
3143 anon_sym_true,
3144 anon_sym_false,
3145 STATE(211), 2,
3146 sym_constraint,
3147 sym_declaration,
3148 STATE(229), 2,
3149 sym_array_type,
3150 sym_type_base,
3151 ACTIONS(49), 5,
3152 anon_sym_ann,
3153 anon_sym_bool,
3154 anon_sym_float,
3155 anon_sym_int,
3156 anon_sym_string,
3157 STATE(32), 16,
3158 sym_parenthesised_expression,
3159 sym_array_comprehension,
3160 sym_call,
3161 sym_generator_call,
3162 sym_if_then_else,
3163 sym_indexed_access,
3164 sym_infix_operator,
3165 sym_let_expression,
3166 sym_prefix_operator,
3167 sym_set_comprehension,
3168 sym_string_interpolation,
3169 sym__literal,
3170 sym_array_literal,
3171 sym_boolean_literal,
3172 sym_set_literal,
3173 sym_string_literal,
3174 [216] = 27,
3175 ACTIONS(11), 1,
3176 anon_sym_constraint,
3177 ACTIONS(15), 1,
3178 anon_sym_LBRACE,
3179 ACTIONS(27), 1,
3180 anon_sym_LPAREN,
3181 ACTIONS(29), 1,
3182 anon_sym_LBRACK,
3183 ACTIONS(31), 1,
3184 anon_sym_if,
3185 ACTIONS(35), 1,
3186 anon_sym_let,
3187 ACTIONS(37), 1,
3188 anon_sym_not,
3189 ACTIONS(39), 1,
3190 anon_sym_DQUOTE,
3191 ACTIONS(41), 1,
3192 anon_sym_array,
3193 ACTIONS(45), 1,
3194 anon_sym_opt,
3195 ACTIONS(47), 1,
3196 anon_sym_set,
3197 ACTIONS(55), 1,
3198 sym_integer_literal,
3199 ACTIONS(192), 1,
3200 sym_identifier,
3201 ACTIONS(196), 1,
3202 anon_sym_RBRACE,
3203 STATE(5), 1,
3204 aux_sym_let_expression_repeat1,
3205 STATE(80), 1,
3206 sym__expression,
3207 STATE(192), 1,
3208 sym_primitive_type,
3209 STATE(288), 1,
3210 sym__type,
3211 ACTIONS(3), 2,
3212 sym_line_comment,
3213 sym_block_comment,
3214 ACTIONS(33), 2,
3215 anon_sym_DASH,
3216 anon_sym_,
3217 ACTIONS(43), 2,
3218 anon_sym_var,
3219 anon_sym_par,
3220 ACTIONS(51), 2,
3221 sym_absent,
3222 sym_float_literal,
3223 ACTIONS(53), 2,
3224 anon_sym_true,
3225 anon_sym_false,
3226 STATE(229), 2,
3227 sym_array_type,
3228 sym_type_base,
3229 STATE(233), 2,
3230 sym_constraint,
3231 sym_declaration,
3232 ACTIONS(49), 5,
3233 anon_sym_ann,
3234 anon_sym_bool,
3235 anon_sym_float,
3236 anon_sym_int,
3237 anon_sym_string,
3238 STATE(32), 16,
3239 sym_parenthesised_expression,
3240 sym_array_comprehension,
3241 sym_call,
3242 sym_generator_call,
3243 sym_if_then_else,
3244 sym_indexed_access,
3245 sym_infix_operator,
3246 sym_let_expression,
3247 sym_prefix_operator,
3248 sym_set_comprehension,
3249 sym_string_interpolation,
3250 sym__literal,
3251 sym_array_literal,
3252 sym_boolean_literal,
3253 sym_set_literal,
3254 sym_string_literal,
3255 [324] = 25,
3256 ACTIONS(198), 1,
3257 sym_identifier,
3258 ACTIONS(201), 1,
3259 anon_sym_LBRACE,
3260 ACTIONS(204), 1,
3261 anon_sym_LPAREN,
3262 ACTIONS(207), 1,
3263 anon_sym_RPAREN,
3264 ACTIONS(209), 1,
3265 anon_sym_LBRACK,
3266 ACTIONS(212), 1,
3267 anon_sym_if,
3268 ACTIONS(218), 1,
3269 anon_sym_let,
3270 ACTIONS(221), 1,
3271 anon_sym_not,
3272 ACTIONS(224), 1,
3273 anon_sym_DQUOTE,
3274 ACTIONS(227), 1,
3275 anon_sym_array,
3276 ACTIONS(233), 1,
3277 anon_sym_opt,
3278 ACTIONS(236), 1,
3279 anon_sym_set,
3280 ACTIONS(248), 1,
3281 sym_integer_literal,
3282 STATE(7), 1,
3283 aux_sym__parameters_repeat1,
3284 STATE(80), 1,
3285 sym__expression,
3286 STATE(192), 1,
3287 sym_primitive_type,
3288 STATE(247), 1,
3289 sym__type,
3290 ACTIONS(3), 2,
3291 sym_line_comment,
3292 sym_block_comment,
3293 ACTIONS(215), 2,
3294 anon_sym_DASH,
3295 anon_sym_,
3296 ACTIONS(230), 2,
3297 anon_sym_var,
3298 anon_sym_par,
3299 ACTIONS(242), 2,
3300 sym_absent,
3301 sym_float_literal,
3302 ACTIONS(245), 2,
3303 anon_sym_true,
3304 anon_sym_false,
3305 STATE(229), 2,
3306 sym_array_type,
3307 sym_type_base,
3308 ACTIONS(239), 5,
3309 anon_sym_ann,
3310 anon_sym_bool,
3311 anon_sym_float,
3312 anon_sym_int,
3313 anon_sym_string,
3314 STATE(32), 16,
3315 sym_parenthesised_expression,
3316 sym_array_comprehension,
3317 sym_call,
3318 sym_generator_call,
3319 sym_if_then_else,
3320 sym_indexed_access,
3321 sym_infix_operator,
3322 sym_let_expression,
3323 sym_prefix_operator,
3324 sym_set_comprehension,
3325 sym_string_interpolation,
3326 sym__literal,
3327 sym_array_literal,
3328 sym_boolean_literal,
3329 sym_set_literal,
3330 sym_string_literal,
3331 [425] = 25,
3332 ACTIONS(15), 1,
3333 anon_sym_LBRACE,
3334 ACTIONS(27), 1,
3335 anon_sym_LPAREN,
3336 ACTIONS(29), 1,
3337 anon_sym_LBRACK,
3338 ACTIONS(31), 1,
3339 anon_sym_if,
3340 ACTIONS(35), 1,
3341 anon_sym_let,
3342 ACTIONS(37), 1,
3343 anon_sym_not,
3344 ACTIONS(39), 1,
3345 anon_sym_DQUOTE,
3346 ACTIONS(41), 1,
3347 anon_sym_array,
3348 ACTIONS(45), 1,
3349 anon_sym_opt,
3350 ACTIONS(47), 1,
3351 anon_sym_set,
3352 ACTIONS(55), 1,
3353 sym_integer_literal,
3354 ACTIONS(192), 1,
3355 sym_identifier,
3356 ACTIONS(251), 1,
3357 anon_sym_RPAREN,
3358 STATE(7), 1,
3359 aux_sym__parameters_repeat1,
3360 STATE(80), 1,
3361 sym__expression,
3362 STATE(192), 1,
3363 sym_primitive_type,
3364 STATE(243), 1,
3365 sym__type,
3366 ACTIONS(3), 2,
3367 sym_line_comment,
3368 sym_block_comment,
3369 ACTIONS(33), 2,
3370 anon_sym_DASH,
3371 anon_sym_,
3372 ACTIONS(43), 2,
3373 anon_sym_var,
3374 anon_sym_par,
3375 ACTIONS(51), 2,
3376 sym_absent,
3377 sym_float_literal,
3378 ACTIONS(53), 2,
3379 anon_sym_true,
3380 anon_sym_false,
3381 STATE(229), 2,
3382 sym_array_type,
3383 sym_type_base,
3384 ACTIONS(49), 5,
3385 anon_sym_ann,
3386 anon_sym_bool,
3387 anon_sym_float,
3388 anon_sym_int,
3389 anon_sym_string,
3390 STATE(32), 16,
3391 sym_parenthesised_expression,
3392 sym_array_comprehension,
3393 sym_call,
3394 sym_generator_call,
3395 sym_if_then_else,
3396 sym_indexed_access,
3397 sym_infix_operator,
3398 sym_let_expression,
3399 sym_prefix_operator,
3400 sym_set_comprehension,
3401 sym_string_interpolation,
3402 sym__literal,
3403 sym_array_literal,
3404 sym_boolean_literal,
3405 sym_set_literal,
3406 sym_string_literal,
3407 [526] = 25,
3408 ACTIONS(15), 1,
3409 anon_sym_LBRACE,
3410 ACTIONS(27), 1,
3411 anon_sym_LPAREN,
3412 ACTIONS(29), 1,
3413 anon_sym_LBRACK,
3414 ACTIONS(31), 1,
3415 anon_sym_if,
3416 ACTIONS(35), 1,
3417 anon_sym_let,
3418 ACTIONS(37), 1,
3419 anon_sym_not,
3420 ACTIONS(39), 1,
3421 anon_sym_DQUOTE,
3422 ACTIONS(41), 1,
3423 anon_sym_array,
3424 ACTIONS(45), 1,
3425 anon_sym_opt,
3426 ACTIONS(47), 1,
3427 anon_sym_set,
3428 ACTIONS(55), 1,
3429 sym_integer_literal,
3430 ACTIONS(192), 1,
3431 sym_identifier,
3432 ACTIONS(253), 1,
3433 anon_sym_RPAREN,
3434 STATE(8), 1,
3435 aux_sym__parameters_repeat1,
3436 STATE(80), 1,
3437 sym__expression,
3438 STATE(192), 1,
3439 sym_primitive_type,
3440 STATE(213), 1,
3441 sym__type,
3442 ACTIONS(3), 2,
3443 sym_line_comment,
3444 sym_block_comment,
3445 ACTIONS(33), 2,
3446 anon_sym_DASH,
3447 anon_sym_,
3448 ACTIONS(43), 2,
3449 anon_sym_var,
3450 anon_sym_par,
3451 ACTIONS(51), 2,
3452 sym_absent,
3453 sym_float_literal,
3454 ACTIONS(53), 2,
3455 anon_sym_true,
3456 anon_sym_false,
3457 STATE(229), 2,
3458 sym_array_type,
3459 sym_type_base,
3460 ACTIONS(49), 5,
3461 anon_sym_ann,
3462 anon_sym_bool,
3463 anon_sym_float,
3464 anon_sym_int,
3465 anon_sym_string,
3466 STATE(32), 16,
3467 sym_parenthesised_expression,
3468 sym_array_comprehension,
3469 sym_call,
3470 sym_generator_call,
3471 sym_if_then_else,
3472 sym_indexed_access,
3473 sym_infix_operator,
3474 sym_let_expression,
3475 sym_prefix_operator,
3476 sym_set_comprehension,
3477 sym_string_interpolation,
3478 sym__literal,
3479 sym_array_literal,
3480 sym_boolean_literal,
3481 sym_set_literal,
3482 sym_string_literal,
3483 [627] = 23,
3484 ACTIONS(15), 1,
3485 anon_sym_LBRACE,
3486 ACTIONS(27), 1,
3487 anon_sym_LPAREN,
3488 ACTIONS(29), 1,
3489 anon_sym_LBRACK,
3490 ACTIONS(31), 1,
3491 anon_sym_if,
3492 ACTIONS(35), 1,
3493 anon_sym_let,
3494 ACTIONS(37), 1,
3495 anon_sym_not,
3496 ACTIONS(39), 1,
3497 anon_sym_DQUOTE,
3498 ACTIONS(41), 1,
3499 anon_sym_array,
3500 ACTIONS(45), 1,
3501 anon_sym_opt,
3502 ACTIONS(47), 1,
3503 anon_sym_set,
3504 ACTIONS(55), 1,
3505 sym_integer_literal,
3506 ACTIONS(192), 1,
3507 sym_identifier,
3508 STATE(80), 1,
3509 sym__expression,
3510 STATE(192), 1,
3511 sym_primitive_type,
3512 STATE(238), 1,
3513 sym__type,
3514 ACTIONS(3), 2,
3515 sym_line_comment,
3516 sym_block_comment,
3517 ACTIONS(33), 2,
3518 anon_sym_DASH,
3519 anon_sym_,
3520 ACTIONS(43), 2,
3521 anon_sym_var,
3522 anon_sym_par,
3523 ACTIONS(51), 2,
3524 sym_absent,
3525 sym_float_literal,
3526 ACTIONS(53), 2,
3527 anon_sym_true,
3528 anon_sym_false,
3529 STATE(229), 2,
3530 sym_array_type,
3531 sym_type_base,
3532 ACTIONS(49), 5,
3533 anon_sym_ann,
3534 anon_sym_bool,
3535 anon_sym_float,
3536 anon_sym_int,
3537 anon_sym_string,
3538 STATE(32), 16,
3539 sym_parenthesised_expression,
3540 sym_array_comprehension,
3541 sym_call,
3542 sym_generator_call,
3543 sym_if_then_else,
3544 sym_indexed_access,
3545 sym_infix_operator,
3546 sym_let_expression,
3547 sym_prefix_operator,
3548 sym_set_comprehension,
3549 sym_string_interpolation,
3550 sym__literal,
3551 sym_array_literal,
3552 sym_boolean_literal,
3553 sym_set_literal,
3554 sym_string_literal,
3555 [722] = 23,
3556 ACTIONS(15), 1,
3557 anon_sym_LBRACE,
3558 ACTIONS(27), 1,
3559 anon_sym_LPAREN,
3560 ACTIONS(29), 1,
3561 anon_sym_LBRACK,
3562 ACTIONS(31), 1,
3563 anon_sym_if,
3564 ACTIONS(35), 1,
3565 anon_sym_let,
3566 ACTIONS(37), 1,
3567 anon_sym_not,
3568 ACTIONS(39), 1,
3569 anon_sym_DQUOTE,
3570 ACTIONS(41), 1,
3571 anon_sym_array,
3572 ACTIONS(45), 1,
3573 anon_sym_opt,
3574 ACTIONS(47), 1,
3575 anon_sym_set,
3576 ACTIONS(55), 1,
3577 sym_integer_literal,
3578 ACTIONS(192), 1,
3579 sym_identifier,
3580 STATE(80), 1,
3581 sym__expression,
3582 STATE(192), 1,
3583 sym_primitive_type,
3584 STATE(283), 1,
3585 sym__type,
3586 ACTIONS(3), 2,
3587 sym_line_comment,
3588 sym_block_comment,
3589 ACTIONS(33), 2,
3590 anon_sym_DASH,
3591 anon_sym_,
3592 ACTIONS(43), 2,
3593 anon_sym_var,
3594 anon_sym_par,
3595 ACTIONS(51), 2,
3596 sym_absent,
3597 sym_float_literal,
3598 ACTIONS(53), 2,
3599 anon_sym_true,
3600 anon_sym_false,
3601 STATE(229), 2,
3602 sym_array_type,
3603 sym_type_base,
3604 ACTIONS(49), 5,
3605 anon_sym_ann,
3606 anon_sym_bool,
3607 anon_sym_float,
3608 anon_sym_int,
3609 anon_sym_string,
3610 STATE(32), 16,
3611 sym_parenthesised_expression,
3612 sym_array_comprehension,
3613 sym_call,
3614 sym_generator_call,
3615 sym_if_then_else,
3616 sym_indexed_access,
3617 sym_infix_operator,
3618 sym_let_expression,
3619 sym_prefix_operator,
3620 sym_set_comprehension,
3621 sym_string_interpolation,
3622 sym__literal,
3623 sym_array_literal,
3624 sym_boolean_literal,
3625 sym_set_literal,
3626 sym_string_literal,
3627 [817] = 23,
3628 ACTIONS(15), 1,
3629 anon_sym_LBRACE,
3630 ACTIONS(27), 1,
3631 anon_sym_LPAREN,
3632 ACTIONS(29), 1,
3633 anon_sym_LBRACK,
3634 ACTIONS(31), 1,
3635 anon_sym_if,
3636 ACTIONS(35), 1,
3637 anon_sym_let,
3638 ACTIONS(37), 1,
3639 anon_sym_not,
3640 ACTIONS(39), 1,
3641 anon_sym_DQUOTE,
3642 ACTIONS(41), 1,
3643 anon_sym_array,
3644 ACTIONS(45), 1,
3645 anon_sym_opt,
3646 ACTIONS(47), 1,
3647 anon_sym_set,
3648 ACTIONS(55), 1,
3649 sym_integer_literal,
3650 ACTIONS(192), 1,
3651 sym_identifier,
3652 STATE(80), 1,
3653 sym__expression,
3654 STATE(192), 1,
3655 sym_primitive_type,
3656 STATE(212), 1,
3657 sym__type,
3658 ACTIONS(3), 2,
3659 sym_line_comment,
3660 sym_block_comment,
3661 ACTIONS(33), 2,
3662 anon_sym_DASH,
3663 anon_sym_,
3664 ACTIONS(43), 2,
3665 anon_sym_var,
3666 anon_sym_par,
3667 ACTIONS(51), 2,
3668 sym_absent,
3669 sym_float_literal,
3670 ACTIONS(53), 2,
3671 anon_sym_true,
3672 anon_sym_false,
3673 STATE(229), 2,
3674 sym_array_type,
3675 sym_type_base,
3676 ACTIONS(49), 5,
3677 anon_sym_ann,
3678 anon_sym_bool,
3679 anon_sym_float,
3680 anon_sym_int,
3681 anon_sym_string,
3682 STATE(32), 16,
3683 sym_parenthesised_expression,
3684 sym_array_comprehension,
3685 sym_call,
3686 sym_generator_call,
3687 sym_if_then_else,
3688 sym_indexed_access,
3689 sym_infix_operator,
3690 sym_let_expression,
3691 sym_prefix_operator,
3692 sym_set_comprehension,
3693 sym_string_interpolation,
3694 sym__literal,
3695 sym_array_literal,
3696 sym_boolean_literal,
3697 sym_set_literal,
3698 sym_string_literal,
3699 [912] = 23,
3700 ACTIONS(15), 1,
3701 anon_sym_LBRACE,
3702 ACTIONS(27), 1,
3703 anon_sym_LPAREN,
3704 ACTIONS(29), 1,
3705 anon_sym_LBRACK,
3706 ACTIONS(31), 1,
3707 anon_sym_if,
3708 ACTIONS(35), 1,
3709 anon_sym_let,
3710 ACTIONS(37), 1,
3711 anon_sym_not,
3712 ACTIONS(39), 1,
3713 anon_sym_DQUOTE,
3714 ACTIONS(41), 1,
3715 anon_sym_array,
3716 ACTIONS(45), 1,
3717 anon_sym_opt,
3718 ACTIONS(47), 1,
3719 anon_sym_set,
3720 ACTIONS(55), 1,
3721 sym_integer_literal,
3722 ACTIONS(192), 1,
3723 sym_identifier,
3724 STATE(80), 1,
3725 sym__expression,
3726 STATE(192), 1,
3727 sym_primitive_type,
3728 STATE(225), 1,
3729 sym__type,
3730 ACTIONS(3), 2,
3731 sym_line_comment,
3732 sym_block_comment,
3733 ACTIONS(33), 2,
3734 anon_sym_DASH,
3735 anon_sym_,
3736 ACTIONS(43), 2,
3737 anon_sym_var,
3738 anon_sym_par,
3739 ACTIONS(51), 2,
3740 sym_absent,
3741 sym_float_literal,
3742 ACTIONS(53), 2,
3743 anon_sym_true,
3744 anon_sym_false,
3745 STATE(229), 2,
3746 sym_array_type,
3747 sym_type_base,
3748 ACTIONS(49), 5,
3749 anon_sym_ann,
3750 anon_sym_bool,
3751 anon_sym_float,
3752 anon_sym_int,
3753 anon_sym_string,
3754 STATE(32), 16,
3755 sym_parenthesised_expression,
3756 sym_array_comprehension,
3757 sym_call,
3758 sym_generator_call,
3759 sym_if_then_else,
3760 sym_indexed_access,
3761 sym_infix_operator,
3762 sym_let_expression,
3763 sym_prefix_operator,
3764 sym_set_comprehension,
3765 sym_string_interpolation,
3766 sym__literal,
3767 sym_array_literal,
3768 sym_boolean_literal,
3769 sym_set_literal,
3770 sym_string_literal,
3771 [1007] = 4,
3772 ACTIONS(259), 1,
3773 anon_sym_LPAREN,
3774 ACTIONS(3), 2,
3775 sym_line_comment,
3776 sym_block_comment,
3777 ACTIONS(257), 10,
3778 anon_sym_EQ,
3779 anon_sym_COLON,
3780 anon_sym_in,
3781 anon_sym_else,
3782 anon_sym_LT_DASH,
3783 anon_sym_LT,
3784 anon_sym_GT,
3785 anon_sym_PLUS,
3786 anon_sym_DASH,
3787 anon_sym_SLASH,
3788 ACTIONS(255), 34,
3789 ts_builtin_sym_end,
3790 anon_sym_SEMI,
3791 anon_sym_COMMA,
3792 anon_sym_RBRACE,
3793 anon_sym_COLON_COLON,
3794 anon_sym_RPAREN,
3795 anon_sym_LBRACK,
3796 anon_sym_PIPE,
3797 anon_sym_RBRACK,
3798 anon_sym_where,
3799 anon_sym_then,
3800 anon_sym_elseif,
3801 anon_sym_endif,
3802 anon_sym_LT_DASH_GT,
3803 anon_sym_DASH_GT,
3804 anon_sym_BSLASH_SLASH,
3805 anon_sym_xor,
3806 anon_sym_SLASH_BSLASH,
3807 anon_sym_EQ_EQ,
3808 anon_sym_BANG_EQ,
3809 anon_sym_LT_EQ,
3810 anon_sym_GT_EQ,
3811 anon_sym_subset,
3812 anon_sym_superset,
3813 anon_sym_union,
3814 anon_sym_diff,
3815 anon_sym_symdiff,
3816 anon_sym_intersect,
3817 anon_sym_DOT_DOT,
3818 anon_sym_PLUS_PLUS,
3819 anon_sym_STAR,
3820 anon_sym_div,
3821 anon_sym_mod,
3822 anon_sym_CARET,
3823 [1063] = 4,
3824 ACTIONS(265), 1,
3825 anon_sym_LBRACK,
3826 ACTIONS(3), 2,
3827 sym_line_comment,
3828 sym_block_comment,
3829 ACTIONS(263), 10,
3830 anon_sym_EQ,
3831 anon_sym_COLON,
3832 anon_sym_in,
3833 anon_sym_else,
3834 anon_sym_LT_DASH,
3835 anon_sym_LT,
3836 anon_sym_GT,
3837 anon_sym_PLUS,
3838 anon_sym_DASH,
3839 anon_sym_SLASH,
3840 ACTIONS(261), 33,
3841 ts_builtin_sym_end,
3842 anon_sym_SEMI,
3843 anon_sym_COMMA,
3844 anon_sym_RBRACE,
3845 anon_sym_COLON_COLON,
3846 anon_sym_RPAREN,
3847 anon_sym_PIPE,
3848 anon_sym_RBRACK,
3849 anon_sym_where,
3850 anon_sym_then,
3851 anon_sym_elseif,
3852 anon_sym_endif,
3853 anon_sym_LT_DASH_GT,
3854 anon_sym_DASH_GT,
3855 anon_sym_BSLASH_SLASH,
3856 anon_sym_xor,
3857 anon_sym_SLASH_BSLASH,
3858 anon_sym_EQ_EQ,
3859 anon_sym_BANG_EQ,
3860 anon_sym_LT_EQ,
3861 anon_sym_GT_EQ,
3862 anon_sym_subset,
3863 anon_sym_superset,
3864 anon_sym_union,
3865 anon_sym_diff,
3866 anon_sym_symdiff,
3867 anon_sym_intersect,
3868 anon_sym_DOT_DOT,
3869 anon_sym_PLUS_PLUS,
3870 anon_sym_STAR,
3871 anon_sym_div,
3872 anon_sym_mod,
3873 anon_sym_CARET,
3874 [1118] = 3,
3875 ACTIONS(3), 2,
3876 sym_line_comment,
3877 sym_block_comment,
3878 ACTIONS(269), 10,
3879 anon_sym_EQ,
3880 anon_sym_COLON,
3881 anon_sym_in,
3882 anon_sym_else,
3883 anon_sym_LT_DASH,
3884 anon_sym_LT,
3885 anon_sym_GT,
3886 anon_sym_PLUS,
3887 anon_sym_DASH,
3888 anon_sym_SLASH,
3889 ACTIONS(267), 34,
3890 ts_builtin_sym_end,
3891 anon_sym_SEMI,
3892 anon_sym_COMMA,
3893 anon_sym_RBRACE,
3894 anon_sym_COLON_COLON,
3895 anon_sym_RPAREN,
3896 anon_sym_LBRACK,
3897 anon_sym_PIPE,
3898 anon_sym_RBRACK,
3899 anon_sym_where,
3900 anon_sym_then,
3901 anon_sym_elseif,
3902 anon_sym_endif,
3903 anon_sym_LT_DASH_GT,
3904 anon_sym_DASH_GT,
3905 anon_sym_BSLASH_SLASH,
3906 anon_sym_xor,
3907 anon_sym_SLASH_BSLASH,
3908 anon_sym_EQ_EQ,
3909 anon_sym_BANG_EQ,
3910 anon_sym_LT_EQ,
3911 anon_sym_GT_EQ,
3912 anon_sym_subset,
3913 anon_sym_superset,
3914 anon_sym_union,
3915 anon_sym_diff,
3916 anon_sym_symdiff,
3917 anon_sym_intersect,
3918 anon_sym_DOT_DOT,
3919 anon_sym_PLUS_PLUS,
3920 anon_sym_STAR,
3921 anon_sym_div,
3922 anon_sym_mod,
3923 anon_sym_CARET,
3924 [1171] = 3,
3925 ACTIONS(3), 2,
3926 sym_line_comment,
3927 sym_block_comment,
3928 ACTIONS(273), 10,
3929 anon_sym_EQ,
3930 anon_sym_COLON,
3931 anon_sym_in,
3932 anon_sym_else,
3933 anon_sym_LT_DASH,
3934 anon_sym_LT,
3935 anon_sym_GT,
3936 anon_sym_PLUS,
3937 anon_sym_DASH,
3938 anon_sym_SLASH,
3939 ACTIONS(271), 34,
3940 ts_builtin_sym_end,
3941 anon_sym_SEMI,
3942 anon_sym_COMMA,
3943 anon_sym_RBRACE,
3944 anon_sym_COLON_COLON,
3945 anon_sym_RPAREN,
3946 anon_sym_LBRACK,
3947 anon_sym_PIPE,
3948 anon_sym_RBRACK,
3949 anon_sym_where,
3950 anon_sym_then,
3951 anon_sym_elseif,
3952 anon_sym_endif,
3953 anon_sym_LT_DASH_GT,
3954 anon_sym_DASH_GT,
3955 anon_sym_BSLASH_SLASH,
3956 anon_sym_xor,
3957 anon_sym_SLASH_BSLASH,
3958 anon_sym_EQ_EQ,
3959 anon_sym_BANG_EQ,
3960 anon_sym_LT_EQ,
3961 anon_sym_GT_EQ,
3962 anon_sym_subset,
3963 anon_sym_superset,
3964 anon_sym_union,
3965 anon_sym_diff,
3966 anon_sym_symdiff,
3967 anon_sym_intersect,
3968 anon_sym_DOT_DOT,
3969 anon_sym_PLUS_PLUS,
3970 anon_sym_STAR,
3971 anon_sym_div,
3972 anon_sym_mod,
3973 anon_sym_CARET,
3974 [1224] = 3,
3975 ACTIONS(3), 2,
3976 sym_line_comment,
3977 sym_block_comment,
3978 ACTIONS(277), 10,
3979 anon_sym_EQ,
3980 anon_sym_COLON,
3981 anon_sym_in,
3982 anon_sym_else,
3983 anon_sym_LT_DASH,
3984 anon_sym_LT,
3985 anon_sym_GT,
3986 anon_sym_PLUS,
3987 anon_sym_DASH,
3988 anon_sym_SLASH,
3989 ACTIONS(275), 34,
3990 ts_builtin_sym_end,
3991 anon_sym_SEMI,
3992 anon_sym_COMMA,
3993 anon_sym_RBRACE,
3994 anon_sym_COLON_COLON,
3995 anon_sym_RPAREN,
3996 anon_sym_LBRACK,
3997 anon_sym_PIPE,
3998 anon_sym_RBRACK,
3999 anon_sym_where,
4000 anon_sym_then,
4001 anon_sym_elseif,
4002 anon_sym_endif,
4003 anon_sym_LT_DASH_GT,
4004 anon_sym_DASH_GT,
4005 anon_sym_BSLASH_SLASH,
4006 anon_sym_xor,
4007 anon_sym_SLASH_BSLASH,
4008 anon_sym_EQ_EQ,
4009 anon_sym_BANG_EQ,
4010 anon_sym_LT_EQ,
4011 anon_sym_GT_EQ,
4012 anon_sym_subset,
4013 anon_sym_superset,
4014 anon_sym_union,
4015 anon_sym_diff,
4016 anon_sym_symdiff,
4017 anon_sym_intersect,
4018 anon_sym_DOT_DOT,
4019 anon_sym_PLUS_PLUS,
4020 anon_sym_STAR,
4021 anon_sym_div,
4022 anon_sym_mod,
4023 anon_sym_CARET,
4024 [1277] = 3,
4025 ACTIONS(3), 2,
4026 sym_line_comment,
4027 sym_block_comment,
4028 ACTIONS(281), 10,
4029 anon_sym_EQ,
4030 anon_sym_COLON,
4031 anon_sym_in,
4032 anon_sym_else,
4033 anon_sym_LT_DASH,
4034 anon_sym_LT,
4035 anon_sym_GT,
4036 anon_sym_PLUS,
4037 anon_sym_DASH,
4038 anon_sym_SLASH,
4039 ACTIONS(279), 34,
4040 ts_builtin_sym_end,
4041 anon_sym_SEMI,
4042 anon_sym_COMMA,
4043 anon_sym_RBRACE,
4044 anon_sym_COLON_COLON,
4045 anon_sym_RPAREN,
4046 anon_sym_LBRACK,
4047 anon_sym_PIPE,
4048 anon_sym_RBRACK,
4049 anon_sym_where,
4050 anon_sym_then,
4051 anon_sym_elseif,
4052 anon_sym_endif,
4053 anon_sym_LT_DASH_GT,
4054 anon_sym_DASH_GT,
4055 anon_sym_BSLASH_SLASH,
4056 anon_sym_xor,
4057 anon_sym_SLASH_BSLASH,
4058 anon_sym_EQ_EQ,
4059 anon_sym_BANG_EQ,
4060 anon_sym_LT_EQ,
4061 anon_sym_GT_EQ,
4062 anon_sym_subset,
4063 anon_sym_superset,
4064 anon_sym_union,
4065 anon_sym_diff,
4066 anon_sym_symdiff,
4067 anon_sym_intersect,
4068 anon_sym_DOT_DOT,
4069 anon_sym_PLUS_PLUS,
4070 anon_sym_STAR,
4071 anon_sym_div,
4072 anon_sym_mod,
4073 anon_sym_CARET,
4074 [1330] = 3,
4075 ACTIONS(3), 2,
4076 sym_line_comment,
4077 sym_block_comment,
4078 ACTIONS(285), 10,
4079 anon_sym_EQ,
4080 anon_sym_COLON,
4081 anon_sym_in,
4082 anon_sym_else,
4083 anon_sym_LT_DASH,
4084 anon_sym_LT,
4085 anon_sym_GT,
4086 anon_sym_PLUS,
4087 anon_sym_DASH,
4088 anon_sym_SLASH,
4089 ACTIONS(283), 34,
4090 ts_builtin_sym_end,
4091 anon_sym_SEMI,
4092 anon_sym_COMMA,
4093 anon_sym_RBRACE,
4094 anon_sym_COLON_COLON,
4095 anon_sym_RPAREN,
4096 anon_sym_LBRACK,
4097 anon_sym_PIPE,
4098 anon_sym_RBRACK,
4099 anon_sym_where,
4100 anon_sym_then,
4101 anon_sym_elseif,
4102 anon_sym_endif,
4103 anon_sym_LT_DASH_GT,
4104 anon_sym_DASH_GT,
4105 anon_sym_BSLASH_SLASH,
4106 anon_sym_xor,
4107 anon_sym_SLASH_BSLASH,
4108 anon_sym_EQ_EQ,
4109 anon_sym_BANG_EQ,
4110 anon_sym_LT_EQ,
4111 anon_sym_GT_EQ,
4112 anon_sym_subset,
4113 anon_sym_superset,
4114 anon_sym_union,
4115 anon_sym_diff,
4116 anon_sym_symdiff,
4117 anon_sym_intersect,
4118 anon_sym_DOT_DOT,
4119 anon_sym_PLUS_PLUS,
4120 anon_sym_STAR,
4121 anon_sym_div,
4122 anon_sym_mod,
4123 anon_sym_CARET,
4124 [1383] = 22,
4125 ACTIONS(15), 1,
4126 anon_sym_LBRACE,
4127 ACTIONS(27), 1,
4128 anon_sym_LPAREN,
4129 ACTIONS(29), 1,
4130 anon_sym_LBRACK,
4131 ACTIONS(31), 1,
4132 anon_sym_if,
4133 ACTIONS(35), 1,
4134 anon_sym_let,
4135 ACTIONS(37), 1,
4136 anon_sym_not,
4137 ACTIONS(39), 1,
4138 anon_sym_DQUOTE,
4139 ACTIONS(45), 1,
4140 anon_sym_opt,
4141 ACTIONS(47), 1,
4142 anon_sym_set,
4143 ACTIONS(55), 1,
4144 sym_integer_literal,
4145 ACTIONS(192), 1,
4146 sym_identifier,
4147 ACTIONS(287), 1,
4148 anon_sym_RBRACK,
4149 STATE(80), 1,
4150 sym__expression,
4151 STATE(192), 1,
4152 sym_primitive_type,
4153 STATE(269), 1,
4154 sym_type_base,
4155 ACTIONS(3), 2,
4156 sym_line_comment,
4157 sym_block_comment,
4158 ACTIONS(33), 2,
4159 anon_sym_DASH,
4160 anon_sym_,
4161 ACTIONS(43), 2,
4162 anon_sym_var,
4163 anon_sym_par,
4164 ACTIONS(51), 2,
4165 sym_absent,
4166 sym_float_literal,
4167 ACTIONS(53), 2,
4168 anon_sym_true,
4169 anon_sym_false,
4170 ACTIONS(49), 5,
4171 anon_sym_ann,
4172 anon_sym_bool,
4173 anon_sym_float,
4174 anon_sym_int,
4175 anon_sym_string,
4176 STATE(32), 16,
4177 sym_parenthesised_expression,
4178 sym_array_comprehension,
4179 sym_call,
4180 sym_generator_call,
4181 sym_if_then_else,
4182 sym_indexed_access,
4183 sym_infix_operator,
4184 sym_let_expression,
4185 sym_prefix_operator,
4186 sym_set_comprehension,
4187 sym_string_interpolation,
4188 sym__literal,
4189 sym_array_literal,
4190 sym_boolean_literal,
4191 sym_set_literal,
4192 sym_string_literal,
4193 [1474] = 3,
4194 ACTIONS(3), 2,
4195 sym_line_comment,
4196 sym_block_comment,
4197 ACTIONS(291), 10,
4198 anon_sym_EQ,
4199 anon_sym_COLON,
4200 anon_sym_in,
4201 anon_sym_else,
4202 anon_sym_LT_DASH,
4203 anon_sym_LT,
4204 anon_sym_GT,
4205 anon_sym_PLUS,
4206 anon_sym_DASH,
4207 anon_sym_SLASH,
4208 ACTIONS(289), 34,
4209 ts_builtin_sym_end,
4210 anon_sym_SEMI,
4211 anon_sym_COMMA,
4212 anon_sym_RBRACE,
4213 anon_sym_COLON_COLON,
4214 anon_sym_RPAREN,
4215 anon_sym_LBRACK,
4216 anon_sym_PIPE,
4217 anon_sym_RBRACK,
4218 anon_sym_where,
4219 anon_sym_then,
4220 anon_sym_elseif,
4221 anon_sym_endif,
4222 anon_sym_LT_DASH_GT,
4223 anon_sym_DASH_GT,
4224 anon_sym_BSLASH_SLASH,
4225 anon_sym_xor,
4226 anon_sym_SLASH_BSLASH,
4227 anon_sym_EQ_EQ,
4228 anon_sym_BANG_EQ,
4229 anon_sym_LT_EQ,
4230 anon_sym_GT_EQ,
4231 anon_sym_subset,
4232 anon_sym_superset,
4233 anon_sym_union,
4234 anon_sym_diff,
4235 anon_sym_symdiff,
4236 anon_sym_intersect,
4237 anon_sym_DOT_DOT,
4238 anon_sym_PLUS_PLUS,
4239 anon_sym_STAR,
4240 anon_sym_div,
4241 anon_sym_mod,
4242 anon_sym_CARET,
4243 [1527] = 15,
4244 ACTIONS(265), 1,
4245 anon_sym_LBRACK,
4246 ACTIONS(293), 1,
4247 anon_sym_COLON_COLON,
4248 ACTIONS(295), 1,
4249 anon_sym_union,
4250 ACTIONS(297), 1,
4251 anon_sym_diff,
4252 ACTIONS(299), 1,
4253 anon_sym_symdiff,
4254 ACTIONS(301), 1,
4255 anon_sym_intersect,
4256 ACTIONS(303), 1,
4257 anon_sym_DOT_DOT,
4258 ACTIONS(307), 1,
4259 anon_sym_PLUS_PLUS,
4260 ACTIONS(311), 1,
4261 anon_sym_SLASH,
4262 ACTIONS(313), 1,
4263 anon_sym_CARET,
4264 ACTIONS(3), 2,
4265 sym_line_comment,
4266 sym_block_comment,
4267 ACTIONS(305), 2,
4268 anon_sym_PLUS,
4269 anon_sym_DASH,
4270 ACTIONS(309), 3,
4271 anon_sym_STAR,
4272 anon_sym_div,
4273 anon_sym_mod,
4274 ACTIONS(263), 7,
4275 anon_sym_EQ,
4276 anon_sym_COLON,
4277 anon_sym_in,
4278 anon_sym_else,
4279 anon_sym_LT_DASH,
4280 anon_sym_LT,
4281 anon_sym_GT,
4282 ACTIONS(261), 22,
4283 ts_builtin_sym_end,
4284 anon_sym_SEMI,
4285 anon_sym_COMMA,
4286 anon_sym_RBRACE,
4287 anon_sym_RPAREN,
4288 anon_sym_PIPE,
4289 anon_sym_RBRACK,
4290 anon_sym_where,
4291 anon_sym_then,
4292 anon_sym_elseif,
4293 anon_sym_endif,
4294 anon_sym_LT_DASH_GT,
4295 anon_sym_DASH_GT,
4296 anon_sym_BSLASH_SLASH,
4297 anon_sym_xor,
4298 anon_sym_SLASH_BSLASH,
4299 anon_sym_EQ_EQ,
4300 anon_sym_BANG_EQ,
4301 anon_sym_LT_EQ,
4302 anon_sym_GT_EQ,
4303 anon_sym_subset,
4304 anon_sym_superset,
4305 [1604] = 20,
4306 ACTIONS(265), 1,
4307 anon_sym_LBRACK,
4308 ACTIONS(293), 1,
4309 anon_sym_COLON_COLON,
4310 ACTIONS(295), 1,
4311 anon_sym_union,
4312 ACTIONS(297), 1,
4313 anon_sym_diff,
4314 ACTIONS(299), 1,
4315 anon_sym_symdiff,
4316 ACTIONS(301), 1,
4317 anon_sym_intersect,
4318 ACTIONS(303), 1,
4319 anon_sym_DOT_DOT,
4320 ACTIONS(307), 1,
4321 anon_sym_PLUS_PLUS,
4322 ACTIONS(311), 1,
4323 anon_sym_SLASH,
4324 ACTIONS(313), 1,
4325 anon_sym_CARET,
4326 ACTIONS(319), 1,
4327 anon_sym_LT_DASH,
4328 ACTIONS(321), 1,
4329 anon_sym_SLASH_BSLASH,
4330 ACTIONS(3), 2,
4331 sym_line_comment,
4332 sym_block_comment,
4333 ACTIONS(263), 2,
4334 anon_sym_COLON,
4335 anon_sym_else,
4336 ACTIONS(305), 2,
4337 anon_sym_PLUS,
4338 anon_sym_DASH,
4339 ACTIONS(317), 2,
4340 anon_sym_DASH_GT,
4341 anon_sym_xor,
4342 ACTIONS(309), 3,
4343 anon_sym_STAR,
4344 anon_sym_div,
4345 anon_sym_mod,
4346 ACTIONS(315), 4,
4347 anon_sym_EQ,
4348 anon_sym_in,
4349 anon_sym_LT,
4350 anon_sym_GT,
4351 ACTIONS(323), 6,
4352 anon_sym_EQ_EQ,
4353 anon_sym_BANG_EQ,
4354 anon_sym_LT_EQ,
4355 anon_sym_GT_EQ,
4356 anon_sym_subset,
4357 anon_sym_superset,
4358 ACTIONS(261), 13,
4359 ts_builtin_sym_end,
4360 anon_sym_SEMI,
4361 anon_sym_COMMA,
4362 anon_sym_RBRACE,
4363 anon_sym_RPAREN,
4364 anon_sym_PIPE,
4365 anon_sym_RBRACK,
4366 anon_sym_where,
4367 anon_sym_then,
4368 anon_sym_elseif,
4369 anon_sym_endif,
4370 anon_sym_LT_DASH_GT,
4371 anon_sym_BSLASH_SLASH,
4372 [1691] = 3,
4373 ACTIONS(3), 2,
4374 sym_line_comment,
4375 sym_block_comment,
4376 ACTIONS(327), 10,
4377 anon_sym_EQ,
4378 anon_sym_COLON,
4379 anon_sym_in,
4380 anon_sym_else,
4381 anon_sym_LT_DASH,
4382 anon_sym_LT,
4383 anon_sym_GT,
4384 anon_sym_PLUS,
4385 anon_sym_DASH,
4386 anon_sym_SLASH,
4387 ACTIONS(325), 34,
4388 ts_builtin_sym_end,
4389 anon_sym_SEMI,
4390 anon_sym_COMMA,
4391 anon_sym_RBRACE,
4392 anon_sym_COLON_COLON,
4393 anon_sym_RPAREN,
4394 anon_sym_LBRACK,
4395 anon_sym_PIPE,
4396 anon_sym_RBRACK,
4397 anon_sym_where,
4398 anon_sym_then,
4399 anon_sym_elseif,
4400 anon_sym_endif,
4401 anon_sym_LT_DASH_GT,
4402 anon_sym_DASH_GT,
4403 anon_sym_BSLASH_SLASH,
4404 anon_sym_xor,
4405 anon_sym_SLASH_BSLASH,
4406 anon_sym_EQ_EQ,
4407 anon_sym_BANG_EQ,
4408 anon_sym_LT_EQ,
4409 anon_sym_GT_EQ,
4410 anon_sym_subset,
4411 anon_sym_superset,
4412 anon_sym_union,
4413 anon_sym_diff,
4414 anon_sym_symdiff,
4415 anon_sym_intersect,
4416 anon_sym_DOT_DOT,
4417 anon_sym_PLUS_PLUS,
4418 anon_sym_STAR,
4419 anon_sym_div,
4420 anon_sym_mod,
4421 anon_sym_CARET,
4422 [1744] = 18,
4423 ACTIONS(265), 1,
4424 anon_sym_LBRACK,
4425 ACTIONS(293), 1,
4426 anon_sym_COLON_COLON,
4427 ACTIONS(295), 1,
4428 anon_sym_union,
4429 ACTIONS(297), 1,
4430 anon_sym_diff,
4431 ACTIONS(299), 1,
4432 anon_sym_symdiff,
4433 ACTIONS(301), 1,
4434 anon_sym_intersect,
4435 ACTIONS(303), 1,
4436 anon_sym_DOT_DOT,
4437 ACTIONS(307), 1,
4438 anon_sym_PLUS_PLUS,
4439 ACTIONS(311), 1,
4440 anon_sym_SLASH,
4441 ACTIONS(313), 1,
4442 anon_sym_CARET,
4443 ACTIONS(321), 1,
4444 anon_sym_SLASH_BSLASH,
4445 ACTIONS(3), 2,
4446 sym_line_comment,
4447 sym_block_comment,
4448 ACTIONS(305), 2,
4449 anon_sym_PLUS,
4450 anon_sym_DASH,
4451 ACTIONS(263), 3,
4452 anon_sym_COLON,
4453 anon_sym_else,
4454 anon_sym_LT_DASH,
4455 ACTIONS(309), 3,
4456 anon_sym_STAR,
4457 anon_sym_div,
4458 anon_sym_mod,
4459 ACTIONS(315), 4,
4460 anon_sym_EQ,
4461 anon_sym_in,
4462 anon_sym_LT,
4463 anon_sym_GT,
4464 ACTIONS(323), 6,
4465 anon_sym_EQ_EQ,
4466 anon_sym_BANG_EQ,
4467 anon_sym_LT_EQ,
4468 anon_sym_GT_EQ,
4469 anon_sym_subset,
4470 anon_sym_superset,
4471 ACTIONS(261), 15,
4472 ts_builtin_sym_end,
4473 anon_sym_SEMI,
4474 anon_sym_COMMA,
4475 anon_sym_RBRACE,
4476 anon_sym_RPAREN,
4477 anon_sym_PIPE,
4478 anon_sym_RBRACK,
4479 anon_sym_where,
4480 anon_sym_then,
4481 anon_sym_elseif,
4482 anon_sym_endif,
4483 anon_sym_LT_DASH_GT,
4484 anon_sym_DASH_GT,
4485 anon_sym_BSLASH_SLASH,
4486 anon_sym_xor,
4487 [1827] = 3,
4488 ACTIONS(3), 2,
4489 sym_line_comment,
4490 sym_block_comment,
4491 ACTIONS(331), 10,
4492 anon_sym_EQ,
4493 anon_sym_COLON,
4494 anon_sym_in,
4495 anon_sym_else,
4496 anon_sym_LT_DASH,
4497 anon_sym_LT,
4498 anon_sym_GT,
4499 anon_sym_PLUS,
4500 anon_sym_DASH,
4501 anon_sym_SLASH,
4502 ACTIONS(329), 34,
4503 ts_builtin_sym_end,
4504 anon_sym_SEMI,
4505 anon_sym_COMMA,
4506 anon_sym_RBRACE,
4507 anon_sym_COLON_COLON,
4508 anon_sym_RPAREN,
4509 anon_sym_LBRACK,
4510 anon_sym_PIPE,
4511 anon_sym_RBRACK,
4512 anon_sym_where,
4513 anon_sym_then,
4514 anon_sym_elseif,
4515 anon_sym_endif,
4516 anon_sym_LT_DASH_GT,
4517 anon_sym_DASH_GT,
4518 anon_sym_BSLASH_SLASH,
4519 anon_sym_xor,
4520 anon_sym_SLASH_BSLASH,
4521 anon_sym_EQ_EQ,
4522 anon_sym_BANG_EQ,
4523 anon_sym_LT_EQ,
4524 anon_sym_GT_EQ,
4525 anon_sym_subset,
4526 anon_sym_superset,
4527 anon_sym_union,
4528 anon_sym_diff,
4529 anon_sym_symdiff,
4530 anon_sym_intersect,
4531 anon_sym_DOT_DOT,
4532 anon_sym_PLUS_PLUS,
4533 anon_sym_STAR,
4534 anon_sym_div,
4535 anon_sym_mod,
4536 anon_sym_CARET,
4537 [1880] = 17,
4538 ACTIONS(265), 1,
4539 anon_sym_LBRACK,
4540 ACTIONS(293), 1,
4541 anon_sym_COLON_COLON,
4542 ACTIONS(295), 1,
4543 anon_sym_union,
4544 ACTIONS(297), 1,
4545 anon_sym_diff,
4546 ACTIONS(299), 1,
4547 anon_sym_symdiff,
4548 ACTIONS(301), 1,
4549 anon_sym_intersect,
4550 ACTIONS(303), 1,
4551 anon_sym_DOT_DOT,
4552 ACTIONS(307), 1,
4553 anon_sym_PLUS_PLUS,
4554 ACTIONS(311), 1,
4555 anon_sym_SLASH,
4556 ACTIONS(313), 1,
4557 anon_sym_CARET,
4558 ACTIONS(3), 2,
4559 sym_line_comment,
4560 sym_block_comment,
4561 ACTIONS(305), 2,
4562 anon_sym_PLUS,
4563 anon_sym_DASH,
4564 ACTIONS(263), 3,
4565 anon_sym_COLON,
4566 anon_sym_else,
4567 anon_sym_LT_DASH,
4568 ACTIONS(309), 3,
4569 anon_sym_STAR,
4570 anon_sym_div,
4571 anon_sym_mod,
4572 ACTIONS(315), 4,
4573 anon_sym_EQ,
4574 anon_sym_in,
4575 anon_sym_LT,
4576 anon_sym_GT,
4577 ACTIONS(323), 6,
4578 anon_sym_EQ_EQ,
4579 anon_sym_BANG_EQ,
4580 anon_sym_LT_EQ,
4581 anon_sym_GT_EQ,
4582 anon_sym_subset,
4583 anon_sym_superset,
4584 ACTIONS(261), 16,
4585 ts_builtin_sym_end,
4586 anon_sym_SEMI,
4587 anon_sym_COMMA,
4588 anon_sym_RBRACE,
4589 anon_sym_RPAREN,
4590 anon_sym_PIPE,
4591 anon_sym_RBRACK,
4592 anon_sym_where,
4593 anon_sym_then,
4594 anon_sym_elseif,
4595 anon_sym_endif,
4596 anon_sym_LT_DASH_GT,
4597 anon_sym_DASH_GT,
4598 anon_sym_BSLASH_SLASH,
4599 anon_sym_xor,
4600 anon_sym_SLASH_BSLASH,
4601 [1961] = 21,
4602 ACTIONS(265), 1,
4603 anon_sym_LBRACK,
4604 ACTIONS(293), 1,
4605 anon_sym_COLON_COLON,
4606 ACTIONS(295), 1,
4607 anon_sym_union,
4608 ACTIONS(297), 1,
4609 anon_sym_diff,
4610 ACTIONS(299), 1,
4611 anon_sym_symdiff,
4612 ACTIONS(301), 1,
4613 anon_sym_intersect,
4614 ACTIONS(303), 1,
4615 anon_sym_DOT_DOT,
4616 ACTIONS(307), 1,
4617 anon_sym_PLUS_PLUS,
4618 ACTIONS(311), 1,
4619 anon_sym_SLASH,
4620 ACTIONS(313), 1,
4621 anon_sym_CARET,
4622 ACTIONS(319), 1,
4623 anon_sym_LT_DASH,
4624 ACTIONS(321), 1,
4625 anon_sym_SLASH_BSLASH,
4626 ACTIONS(3), 2,
4627 sym_line_comment,
4628 sym_block_comment,
4629 ACTIONS(305), 2,
4630 anon_sym_PLUS,
4631 anon_sym_DASH,
4632 ACTIONS(317), 2,
4633 anon_sym_DASH_GT,
4634 anon_sym_xor,
4635 ACTIONS(335), 2,
4636 anon_sym_COLON,
4637 anon_sym_else,
4638 ACTIONS(337), 2,
4639 anon_sym_LT_DASH_GT,
4640 anon_sym_BSLASH_SLASH,
4641 ACTIONS(309), 3,
4642 anon_sym_STAR,
4643 anon_sym_div,
4644 anon_sym_mod,
4645 ACTIONS(315), 4,
4646 anon_sym_EQ,
4647 anon_sym_in,
4648 anon_sym_LT,
4649 anon_sym_GT,
4650 ACTIONS(323), 6,
4651 anon_sym_EQ_EQ,
4652 anon_sym_BANG_EQ,
4653 anon_sym_LT_EQ,
4654 anon_sym_GT_EQ,
4655 anon_sym_subset,
4656 anon_sym_superset,
4657 ACTIONS(333), 11,
4658 ts_builtin_sym_end,
4659 anon_sym_SEMI,
4660 anon_sym_COMMA,
4661 anon_sym_RBRACE,
4662 anon_sym_RPAREN,
4663 anon_sym_PIPE,
4664 anon_sym_RBRACK,
4665 anon_sym_where,
4666 anon_sym_then,
4667 anon_sym_elseif,
4668 anon_sym_endif,
4669 [2050] = 3,
4670 ACTIONS(3), 2,
4671 sym_line_comment,
4672 sym_block_comment,
4673 ACTIONS(341), 10,
4674 anon_sym_EQ,
4675 anon_sym_COLON,
4676 anon_sym_in,
4677 anon_sym_else,
4678 anon_sym_LT_DASH,
4679 anon_sym_LT,
4680 anon_sym_GT,
4681 anon_sym_PLUS,
4682 anon_sym_DASH,
4683 anon_sym_SLASH,
4684 ACTIONS(339), 34,
4685 ts_builtin_sym_end,
4686 anon_sym_SEMI,
4687 anon_sym_COMMA,
4688 anon_sym_RBRACE,
4689 anon_sym_COLON_COLON,
4690 anon_sym_RPAREN,
4691 anon_sym_LBRACK,
4692 anon_sym_PIPE,
4693 anon_sym_RBRACK,
4694 anon_sym_where,
4695 anon_sym_then,
4696 anon_sym_elseif,
4697 anon_sym_endif,
4698 anon_sym_LT_DASH_GT,
4699 anon_sym_DASH_GT,
4700 anon_sym_BSLASH_SLASH,
4701 anon_sym_xor,
4702 anon_sym_SLASH_BSLASH,
4703 anon_sym_EQ_EQ,
4704 anon_sym_BANG_EQ,
4705 anon_sym_LT_EQ,
4706 anon_sym_GT_EQ,
4707 anon_sym_subset,
4708 anon_sym_superset,
4709 anon_sym_union,
4710 anon_sym_diff,
4711 anon_sym_symdiff,
4712 anon_sym_intersect,
4713 anon_sym_DOT_DOT,
4714 anon_sym_PLUS_PLUS,
4715 anon_sym_STAR,
4716 anon_sym_div,
4717 anon_sym_mod,
4718 anon_sym_CARET,
4719 [2103] = 14,
4720 ACTIONS(265), 1,
4721 anon_sym_LBRACK,
4722 ACTIONS(293), 1,
4723 anon_sym_COLON_COLON,
4724 ACTIONS(297), 1,
4725 anon_sym_diff,
4726 ACTIONS(299), 1,
4727 anon_sym_symdiff,
4728 ACTIONS(301), 1,
4729 anon_sym_intersect,
4730 ACTIONS(303), 1,
4731 anon_sym_DOT_DOT,
4732 ACTIONS(307), 1,
4733 anon_sym_PLUS_PLUS,
4734 ACTIONS(311), 1,
4735 anon_sym_SLASH,
4736 ACTIONS(313), 1,
4737 anon_sym_CARET,
4738 ACTIONS(3), 2,
4739 sym_line_comment,
4740 sym_block_comment,
4741 ACTIONS(305), 2,
4742 anon_sym_PLUS,
4743 anon_sym_DASH,
4744 ACTIONS(309), 3,
4745 anon_sym_STAR,
4746 anon_sym_div,
4747 anon_sym_mod,
4748 ACTIONS(263), 7,
4749 anon_sym_EQ,
4750 anon_sym_COLON,
4751 anon_sym_in,
4752 anon_sym_else,
4753 anon_sym_LT_DASH,
4754 anon_sym_LT,
4755 anon_sym_GT,
4756 ACTIONS(261), 23,
4757 ts_builtin_sym_end,
4758 anon_sym_SEMI,
4759 anon_sym_COMMA,
4760 anon_sym_RBRACE,
4761 anon_sym_RPAREN,
4762 anon_sym_PIPE,
4763 anon_sym_RBRACK,
4764 anon_sym_where,
4765 anon_sym_then,
4766 anon_sym_elseif,
4767 anon_sym_endif,
4768 anon_sym_LT_DASH_GT,
4769 anon_sym_DASH_GT,
4770 anon_sym_BSLASH_SLASH,
4771 anon_sym_xor,
4772 anon_sym_SLASH_BSLASH,
4773 anon_sym_EQ_EQ,
4774 anon_sym_BANG_EQ,
4775 anon_sym_LT_EQ,
4776 anon_sym_GT_EQ,
4777 anon_sym_subset,
4778 anon_sym_superset,
4779 anon_sym_union,
4780 [2178] = 3,
4781 ACTIONS(3), 2,
4782 sym_line_comment,
4783 sym_block_comment,
4784 ACTIONS(257), 10,
4785 anon_sym_EQ,
4786 anon_sym_COLON,
4787 anon_sym_in,
4788 anon_sym_else,
4789 anon_sym_LT_DASH,
4790 anon_sym_LT,
4791 anon_sym_GT,
4792 anon_sym_PLUS,
4793 anon_sym_DASH,
4794 anon_sym_SLASH,
4795 ACTIONS(255), 34,
4796 ts_builtin_sym_end,
4797 anon_sym_SEMI,
4798 anon_sym_COMMA,
4799 anon_sym_RBRACE,
4800 anon_sym_COLON_COLON,
4801 anon_sym_RPAREN,
4802 anon_sym_LBRACK,
4803 anon_sym_PIPE,
4804 anon_sym_RBRACK,
4805 anon_sym_where,
4806 anon_sym_then,
4807 anon_sym_elseif,
4808 anon_sym_endif,
4809 anon_sym_LT_DASH_GT,
4810 anon_sym_DASH_GT,
4811 anon_sym_BSLASH_SLASH,
4812 anon_sym_xor,
4813 anon_sym_SLASH_BSLASH,
4814 anon_sym_EQ_EQ,
4815 anon_sym_BANG_EQ,
4816 anon_sym_LT_EQ,
4817 anon_sym_GT_EQ,
4818 anon_sym_subset,
4819 anon_sym_superset,
4820 anon_sym_union,
4821 anon_sym_diff,
4822 anon_sym_symdiff,
4823 anon_sym_intersect,
4824 anon_sym_DOT_DOT,
4825 anon_sym_PLUS_PLUS,
4826 anon_sym_STAR,
4827 anon_sym_div,
4828 anon_sym_mod,
4829 anon_sym_CARET,
4830 [2231] = 3,
4831 ACTIONS(3), 2,
4832 sym_line_comment,
4833 sym_block_comment,
4834 ACTIONS(345), 10,
4835 anon_sym_EQ,
4836 anon_sym_COLON,
4837 anon_sym_in,
4838 anon_sym_else,
4839 anon_sym_LT_DASH,
4840 anon_sym_LT,
4841 anon_sym_GT,
4842 anon_sym_PLUS,
4843 anon_sym_DASH,
4844 anon_sym_SLASH,
4845 ACTIONS(343), 34,
4846 ts_builtin_sym_end,
4847 anon_sym_SEMI,
4848 anon_sym_COMMA,
4849 anon_sym_RBRACE,
4850 anon_sym_COLON_COLON,
4851 anon_sym_RPAREN,
4852 anon_sym_LBRACK,
4853 anon_sym_PIPE,
4854 anon_sym_RBRACK,
4855 anon_sym_where,
4856 anon_sym_then,
4857 anon_sym_elseif,
4858 anon_sym_endif,
4859 anon_sym_LT_DASH_GT,
4860 anon_sym_DASH_GT,
4861 anon_sym_BSLASH_SLASH,
4862 anon_sym_xor,
4863 anon_sym_SLASH_BSLASH,
4864 anon_sym_EQ_EQ,
4865 anon_sym_BANG_EQ,
4866 anon_sym_LT_EQ,
4867 anon_sym_GT_EQ,
4868 anon_sym_subset,
4869 anon_sym_superset,
4870 anon_sym_union,
4871 anon_sym_diff,
4872 anon_sym_symdiff,
4873 anon_sym_intersect,
4874 anon_sym_DOT_DOT,
4875 anon_sym_PLUS_PLUS,
4876 anon_sym_STAR,
4877 anon_sym_div,
4878 anon_sym_mod,
4879 anon_sym_CARET,
4880 [2284] = 21,
4881 ACTIONS(265), 1,
4882 anon_sym_LBRACK,
4883 ACTIONS(293), 1,
4884 anon_sym_COLON_COLON,
4885 ACTIONS(295), 1,
4886 anon_sym_union,
4887 ACTIONS(297), 1,
4888 anon_sym_diff,
4889 ACTIONS(299), 1,
4890 anon_sym_symdiff,
4891 ACTIONS(301), 1,
4892 anon_sym_intersect,
4893 ACTIONS(303), 1,
4894 anon_sym_DOT_DOT,
4895 ACTIONS(307), 1,
4896 anon_sym_PLUS_PLUS,
4897 ACTIONS(311), 1,
4898 anon_sym_SLASH,
4899 ACTIONS(313), 1,
4900 anon_sym_CARET,
4901 ACTIONS(319), 1,
4902 anon_sym_LT_DASH,
4903 ACTIONS(321), 1,
4904 anon_sym_SLASH_BSLASH,
4905 ACTIONS(3), 2,
4906 sym_line_comment,
4907 sym_block_comment,
4908 ACTIONS(305), 2,
4909 anon_sym_PLUS,
4910 anon_sym_DASH,
4911 ACTIONS(317), 2,
4912 anon_sym_DASH_GT,
4913 anon_sym_xor,
4914 ACTIONS(337), 2,
4915 anon_sym_LT_DASH_GT,
4916 anon_sym_BSLASH_SLASH,
4917 ACTIONS(349), 2,
4918 anon_sym_COLON,
4919 anon_sym_else,
4920 ACTIONS(309), 3,
4921 anon_sym_STAR,
4922 anon_sym_div,
4923 anon_sym_mod,
4924 ACTIONS(315), 4,
4925 anon_sym_EQ,
4926 anon_sym_in,
4927 anon_sym_LT,
4928 anon_sym_GT,
4929 ACTIONS(323), 6,
4930 anon_sym_EQ_EQ,
4931 anon_sym_BANG_EQ,
4932 anon_sym_LT_EQ,
4933 anon_sym_GT_EQ,
4934 anon_sym_subset,
4935 anon_sym_superset,
4936 ACTIONS(347), 11,
4937 ts_builtin_sym_end,
4938 anon_sym_SEMI,
4939 anon_sym_COMMA,
4940 anon_sym_RBRACE,
4941 anon_sym_RPAREN,
4942 anon_sym_PIPE,
4943 anon_sym_RBRACK,
4944 anon_sym_where,
4945 anon_sym_then,
4946 anon_sym_elseif,
4947 anon_sym_endif,
4948 [2373] = 3,
4949 ACTIONS(3), 2,
4950 sym_line_comment,
4951 sym_block_comment,
4952 ACTIONS(353), 10,
4953 anon_sym_EQ,
4954 anon_sym_COLON,
4955 anon_sym_in,
4956 anon_sym_else,
4957 anon_sym_LT_DASH,
4958 anon_sym_LT,
4959 anon_sym_GT,
4960 anon_sym_PLUS,
4961 anon_sym_DASH,
4962 anon_sym_SLASH,
4963 ACTIONS(351), 34,
4964 ts_builtin_sym_end,
4965 anon_sym_SEMI,
4966 anon_sym_COMMA,
4967 anon_sym_RBRACE,
4968 anon_sym_COLON_COLON,
4969 anon_sym_RPAREN,
4970 anon_sym_LBRACK,
4971 anon_sym_PIPE,
4972 anon_sym_RBRACK,
4973 anon_sym_where,
4974 anon_sym_then,
4975 anon_sym_elseif,
4976 anon_sym_endif,
4977 anon_sym_LT_DASH_GT,
4978 anon_sym_DASH_GT,
4979 anon_sym_BSLASH_SLASH,
4980 anon_sym_xor,
4981 anon_sym_SLASH_BSLASH,
4982 anon_sym_EQ_EQ,
4983 anon_sym_BANG_EQ,
4984 anon_sym_LT_EQ,
4985 anon_sym_GT_EQ,
4986 anon_sym_subset,
4987 anon_sym_superset,
4988 anon_sym_union,
4989 anon_sym_diff,
4990 anon_sym_symdiff,
4991 anon_sym_intersect,
4992 anon_sym_DOT_DOT,
4993 anon_sym_PLUS_PLUS,
4994 anon_sym_STAR,
4995 anon_sym_div,
4996 anon_sym_mod,
4997 anon_sym_CARET,
4998 [2426] = 13,
4999 ACTIONS(265), 1,
5000 anon_sym_LBRACK,
5001 ACTIONS(293), 1,
5002 anon_sym_COLON_COLON,
5003 ACTIONS(299), 1,
5004 anon_sym_symdiff,
5005 ACTIONS(301), 1,
5006 anon_sym_intersect,
5007 ACTIONS(303), 1,
5008 anon_sym_DOT_DOT,
5009 ACTIONS(307), 1,
5010 anon_sym_PLUS_PLUS,
5011 ACTIONS(311), 1,
5012 anon_sym_SLASH,
5013 ACTIONS(313), 1,
5014 anon_sym_CARET,
5015 ACTIONS(3), 2,
5016 sym_line_comment,
5017 sym_block_comment,
5018 ACTIONS(305), 2,
5019 anon_sym_PLUS,
5020 anon_sym_DASH,
5021 ACTIONS(309), 3,
5022 anon_sym_STAR,
5023 anon_sym_div,
5024 anon_sym_mod,
5025 ACTIONS(263), 7,
5026 anon_sym_EQ,
5027 anon_sym_COLON,
5028 anon_sym_in,
5029 anon_sym_else,
5030 anon_sym_LT_DASH,
5031 anon_sym_LT,
5032 anon_sym_GT,
5033 ACTIONS(261), 24,
5034 ts_builtin_sym_end,
5035 anon_sym_SEMI,
5036 anon_sym_COMMA,
5037 anon_sym_RBRACE,
5038 anon_sym_RPAREN,
5039 anon_sym_PIPE,
5040 anon_sym_RBRACK,
5041 anon_sym_where,
5042 anon_sym_then,
5043 anon_sym_elseif,
5044 anon_sym_endif,
5045 anon_sym_LT_DASH_GT,
5046 anon_sym_DASH_GT,
5047 anon_sym_BSLASH_SLASH,
5048 anon_sym_xor,
5049 anon_sym_SLASH_BSLASH,
5050 anon_sym_EQ_EQ,
5051 anon_sym_BANG_EQ,
5052 anon_sym_LT_EQ,
5053 anon_sym_GT_EQ,
5054 anon_sym_subset,
5055 anon_sym_superset,
5056 anon_sym_union,
5057 anon_sym_diff,
5058 [2499] = 3,
5059 ACTIONS(3), 2,
5060 sym_line_comment,
5061 sym_block_comment,
5062 ACTIONS(357), 10,
5063 anon_sym_EQ,
5064 anon_sym_COLON,
5065 anon_sym_in,
5066 anon_sym_else,
5067 anon_sym_LT_DASH,
5068 anon_sym_LT,
5069 anon_sym_GT,
5070 anon_sym_PLUS,
5071 anon_sym_DASH,
5072 anon_sym_SLASH,
5073 ACTIONS(355), 34,
5074 ts_builtin_sym_end,
5075 anon_sym_SEMI,
5076 anon_sym_COMMA,
5077 anon_sym_RBRACE,
5078 anon_sym_COLON_COLON,
5079 anon_sym_RPAREN,
5080 anon_sym_LBRACK,
5081 anon_sym_PIPE,
5082 anon_sym_RBRACK,
5083 anon_sym_where,
5084 anon_sym_then,
5085 anon_sym_elseif,
5086 anon_sym_endif,
5087 anon_sym_LT_DASH_GT,
5088 anon_sym_DASH_GT,
5089 anon_sym_BSLASH_SLASH,
5090 anon_sym_xor,
5091 anon_sym_SLASH_BSLASH,
5092 anon_sym_EQ_EQ,
5093 anon_sym_BANG_EQ,
5094 anon_sym_LT_EQ,
5095 anon_sym_GT_EQ,
5096 anon_sym_subset,
5097 anon_sym_superset,
5098 anon_sym_union,
5099 anon_sym_diff,
5100 anon_sym_symdiff,
5101 anon_sym_intersect,
5102 anon_sym_DOT_DOT,
5103 anon_sym_PLUS_PLUS,
5104 anon_sym_STAR,
5105 anon_sym_div,
5106 anon_sym_mod,
5107 anon_sym_CARET,
5108 [2552] = 12,
5109 ACTIONS(265), 1,
5110 anon_sym_LBRACK,
5111 ACTIONS(293), 1,
5112 anon_sym_COLON_COLON,
5113 ACTIONS(301), 1,
5114 anon_sym_intersect,
5115 ACTIONS(303), 1,
5116 anon_sym_DOT_DOT,
5117 ACTIONS(307), 1,
5118 anon_sym_PLUS_PLUS,
5119 ACTIONS(311), 1,
5120 anon_sym_SLASH,
5121 ACTIONS(313), 1,
5122 anon_sym_CARET,
5123 ACTIONS(3), 2,
5124 sym_line_comment,
5125 sym_block_comment,
5126 ACTIONS(305), 2,
5127 anon_sym_PLUS,
5128 anon_sym_DASH,
5129 ACTIONS(309), 3,
5130 anon_sym_STAR,
5131 anon_sym_div,
5132 anon_sym_mod,
5133 ACTIONS(263), 7,
5134 anon_sym_EQ,
5135 anon_sym_COLON,
5136 anon_sym_in,
5137 anon_sym_else,
5138 anon_sym_LT_DASH,
5139 anon_sym_LT,
5140 anon_sym_GT,
5141 ACTIONS(261), 25,
5142 ts_builtin_sym_end,
5143 anon_sym_SEMI,
5144 anon_sym_COMMA,
5145 anon_sym_RBRACE,
5146 anon_sym_RPAREN,
5147 anon_sym_PIPE,
5148 anon_sym_RBRACK,
5149 anon_sym_where,
5150 anon_sym_then,
5151 anon_sym_elseif,
5152 anon_sym_endif,
5153 anon_sym_LT_DASH_GT,
5154 anon_sym_DASH_GT,
5155 anon_sym_BSLASH_SLASH,
5156 anon_sym_xor,
5157 anon_sym_SLASH_BSLASH,
5158 anon_sym_EQ_EQ,
5159 anon_sym_BANG_EQ,
5160 anon_sym_LT_EQ,
5161 anon_sym_GT_EQ,
5162 anon_sym_subset,
5163 anon_sym_superset,
5164 anon_sym_union,
5165 anon_sym_diff,
5166 anon_sym_symdiff,
5167 [2623] = 3,
5168 ACTIONS(3), 2,
5169 sym_line_comment,
5170 sym_block_comment,
5171 ACTIONS(361), 10,
5172 anon_sym_EQ,
5173 anon_sym_COLON,
5174 anon_sym_in,
5175 anon_sym_else,
5176 anon_sym_LT_DASH,
5177 anon_sym_LT,
5178 anon_sym_GT,
5179 anon_sym_PLUS,
5180 anon_sym_DASH,
5181 anon_sym_SLASH,
5182 ACTIONS(359), 34,
5183 ts_builtin_sym_end,
5184 anon_sym_SEMI,
5185 anon_sym_COMMA,
5186 anon_sym_RBRACE,
5187 anon_sym_COLON_COLON,
5188 anon_sym_RPAREN,
5189 anon_sym_LBRACK,
5190 anon_sym_PIPE,
5191 anon_sym_RBRACK,
5192 anon_sym_where,
5193 anon_sym_then,
5194 anon_sym_elseif,
5195 anon_sym_endif,
5196 anon_sym_LT_DASH_GT,
5197 anon_sym_DASH_GT,
5198 anon_sym_BSLASH_SLASH,
5199 anon_sym_xor,
5200 anon_sym_SLASH_BSLASH,
5201 anon_sym_EQ_EQ,
5202 anon_sym_BANG_EQ,
5203 anon_sym_LT_EQ,
5204 anon_sym_GT_EQ,
5205 anon_sym_subset,
5206 anon_sym_superset,
5207 anon_sym_union,
5208 anon_sym_diff,
5209 anon_sym_symdiff,
5210 anon_sym_intersect,
5211 anon_sym_DOT_DOT,
5212 anon_sym_PLUS_PLUS,
5213 anon_sym_STAR,
5214 anon_sym_div,
5215 anon_sym_mod,
5216 anon_sym_CARET,
5217 [2676] = 3,
5218 ACTIONS(3), 2,
5219 sym_line_comment,
5220 sym_block_comment,
5221 ACTIONS(365), 10,
5222 anon_sym_EQ,
5223 anon_sym_COLON,
5224 anon_sym_in,
5225 anon_sym_else,
5226 anon_sym_LT_DASH,
5227 anon_sym_LT,
5228 anon_sym_GT,
5229 anon_sym_PLUS,
5230 anon_sym_DASH,
5231 anon_sym_SLASH,
5232 ACTIONS(363), 34,
5233 ts_builtin_sym_end,
5234 anon_sym_SEMI,
5235 anon_sym_COMMA,
5236 anon_sym_RBRACE,
5237 anon_sym_COLON_COLON,
5238 anon_sym_RPAREN,
5239 anon_sym_LBRACK,
5240 anon_sym_PIPE,
5241 anon_sym_RBRACK,
5242 anon_sym_where,
5243 anon_sym_then,
5244 anon_sym_elseif,
5245 anon_sym_endif,
5246 anon_sym_LT_DASH_GT,
5247 anon_sym_DASH_GT,
5248 anon_sym_BSLASH_SLASH,
5249 anon_sym_xor,
5250 anon_sym_SLASH_BSLASH,
5251 anon_sym_EQ_EQ,
5252 anon_sym_BANG_EQ,
5253 anon_sym_LT_EQ,
5254 anon_sym_GT_EQ,
5255 anon_sym_subset,
5256 anon_sym_superset,
5257 anon_sym_union,
5258 anon_sym_diff,
5259 anon_sym_symdiff,
5260 anon_sym_intersect,
5261 anon_sym_DOT_DOT,
5262 anon_sym_PLUS_PLUS,
5263 anon_sym_STAR,
5264 anon_sym_div,
5265 anon_sym_mod,
5266 anon_sym_CARET,
5267 [2729] = 3,
5268 ACTIONS(3), 2,
5269 sym_line_comment,
5270 sym_block_comment,
5271 ACTIONS(369), 10,
5272 anon_sym_EQ,
5273 anon_sym_COLON,
5274 anon_sym_in,
5275 anon_sym_else,
5276 anon_sym_LT_DASH,
5277 anon_sym_LT,
5278 anon_sym_GT,
5279 anon_sym_PLUS,
5280 anon_sym_DASH,
5281 anon_sym_SLASH,
5282 ACTIONS(367), 34,
5283 ts_builtin_sym_end,
5284 anon_sym_SEMI,
5285 anon_sym_COMMA,
5286 anon_sym_RBRACE,
5287 anon_sym_COLON_COLON,
5288 anon_sym_RPAREN,
5289 anon_sym_LBRACK,
5290 anon_sym_PIPE,
5291 anon_sym_RBRACK,
5292 anon_sym_where,
5293 anon_sym_then,
5294 anon_sym_elseif,
5295 anon_sym_endif,
5296 anon_sym_LT_DASH_GT,
5297 anon_sym_DASH_GT,
5298 anon_sym_BSLASH_SLASH,
5299 anon_sym_xor,
5300 anon_sym_SLASH_BSLASH,
5301 anon_sym_EQ_EQ,
5302 anon_sym_BANG_EQ,
5303 anon_sym_LT_EQ,
5304 anon_sym_GT_EQ,
5305 anon_sym_subset,
5306 anon_sym_superset,
5307 anon_sym_union,
5308 anon_sym_diff,
5309 anon_sym_symdiff,
5310 anon_sym_intersect,
5311 anon_sym_DOT_DOT,
5312 anon_sym_PLUS_PLUS,
5313 anon_sym_STAR,
5314 anon_sym_div,
5315 anon_sym_mod,
5316 anon_sym_CARET,
5317 [2782] = 3,
5318 ACTIONS(3), 2,
5319 sym_line_comment,
5320 sym_block_comment,
5321 ACTIONS(373), 10,
5322 anon_sym_EQ,
5323 anon_sym_COLON,
5324 anon_sym_in,
5325 anon_sym_else,
5326 anon_sym_LT_DASH,
5327 anon_sym_LT,
5328 anon_sym_GT,
5329 anon_sym_PLUS,
5330 anon_sym_DASH,
5331 anon_sym_SLASH,
5332 ACTIONS(371), 34,
5333 ts_builtin_sym_end,
5334 anon_sym_SEMI,
5335 anon_sym_COMMA,
5336 anon_sym_RBRACE,
5337 anon_sym_COLON_COLON,
5338 anon_sym_RPAREN,
5339 anon_sym_LBRACK,
5340 anon_sym_PIPE,
5341 anon_sym_RBRACK,
5342 anon_sym_where,
5343 anon_sym_then,
5344 anon_sym_elseif,
5345 anon_sym_endif,
5346 anon_sym_LT_DASH_GT,
5347 anon_sym_DASH_GT,
5348 anon_sym_BSLASH_SLASH,
5349 anon_sym_xor,
5350 anon_sym_SLASH_BSLASH,
5351 anon_sym_EQ_EQ,
5352 anon_sym_BANG_EQ,
5353 anon_sym_LT_EQ,
5354 anon_sym_GT_EQ,
5355 anon_sym_subset,
5356 anon_sym_superset,
5357 anon_sym_union,
5358 anon_sym_diff,
5359 anon_sym_symdiff,
5360 anon_sym_intersect,
5361 anon_sym_DOT_DOT,
5362 anon_sym_PLUS_PLUS,
5363 anon_sym_STAR,
5364 anon_sym_div,
5365 anon_sym_mod,
5366 anon_sym_CARET,
5367 [2835] = 3,
5368 ACTIONS(3), 2,
5369 sym_line_comment,
5370 sym_block_comment,
5371 ACTIONS(377), 10,
5372 anon_sym_EQ,
5373 anon_sym_COLON,
5374 anon_sym_in,
5375 anon_sym_else,
5376 anon_sym_LT_DASH,
5377 anon_sym_LT,
5378 anon_sym_GT,
5379 anon_sym_PLUS,
5380 anon_sym_DASH,
5381 anon_sym_SLASH,
5382 ACTIONS(375), 34,
5383 ts_builtin_sym_end,
5384 anon_sym_SEMI,
5385 anon_sym_COMMA,
5386 anon_sym_RBRACE,
5387 anon_sym_COLON_COLON,
5388 anon_sym_RPAREN,
5389 anon_sym_LBRACK,
5390 anon_sym_PIPE,
5391 anon_sym_RBRACK,
5392 anon_sym_where,
5393 anon_sym_then,
5394 anon_sym_elseif,
5395 anon_sym_endif,
5396 anon_sym_LT_DASH_GT,
5397 anon_sym_DASH_GT,
5398 anon_sym_BSLASH_SLASH,
5399 anon_sym_xor,
5400 anon_sym_SLASH_BSLASH,
5401 anon_sym_EQ_EQ,
5402 anon_sym_BANG_EQ,
5403 anon_sym_LT_EQ,
5404 anon_sym_GT_EQ,
5405 anon_sym_subset,
5406 anon_sym_superset,
5407 anon_sym_union,
5408 anon_sym_diff,
5409 anon_sym_symdiff,
5410 anon_sym_intersect,
5411 anon_sym_DOT_DOT,
5412 anon_sym_PLUS_PLUS,
5413 anon_sym_STAR,
5414 anon_sym_div,
5415 anon_sym_mod,
5416 anon_sym_CARET,
5417 [2888] = 3,
5418 ACTIONS(3), 2,
5419 sym_line_comment,
5420 sym_block_comment,
5421 ACTIONS(381), 10,
5422 anon_sym_EQ,
5423 anon_sym_COLON,
5424 anon_sym_in,
5425 anon_sym_else,
5426 anon_sym_LT_DASH,
5427 anon_sym_LT,
5428 anon_sym_GT,
5429 anon_sym_PLUS,
5430 anon_sym_DASH,
5431 anon_sym_SLASH,
5432 ACTIONS(379), 34,
5433 ts_builtin_sym_end,
5434 anon_sym_SEMI,
5435 anon_sym_COMMA,
5436 anon_sym_RBRACE,
5437 anon_sym_COLON_COLON,
5438 anon_sym_RPAREN,
5439 anon_sym_LBRACK,
5440 anon_sym_PIPE,
5441 anon_sym_RBRACK,
5442 anon_sym_where,
5443 anon_sym_then,
5444 anon_sym_elseif,
5445 anon_sym_endif,
5446 anon_sym_LT_DASH_GT,
5447 anon_sym_DASH_GT,
5448 anon_sym_BSLASH_SLASH,
5449 anon_sym_xor,
5450 anon_sym_SLASH_BSLASH,
5451 anon_sym_EQ_EQ,
5452 anon_sym_BANG_EQ,
5453 anon_sym_LT_EQ,
5454 anon_sym_GT_EQ,
5455 anon_sym_subset,
5456 anon_sym_superset,
5457 anon_sym_union,
5458 anon_sym_diff,
5459 anon_sym_symdiff,
5460 anon_sym_intersect,
5461 anon_sym_DOT_DOT,
5462 anon_sym_PLUS_PLUS,
5463 anon_sym_STAR,
5464 anon_sym_div,
5465 anon_sym_mod,
5466 anon_sym_CARET,
5467 [2941] = 10,
5468 ACTIONS(265), 1,
5469 anon_sym_LBRACK,
5470 ACTIONS(293), 1,
5471 anon_sym_COLON_COLON,
5472 ACTIONS(307), 1,
5473 anon_sym_PLUS_PLUS,
5474 ACTIONS(311), 1,
5475 anon_sym_SLASH,
5476 ACTIONS(313), 1,
5477 anon_sym_CARET,
5478 ACTIONS(3), 2,
5479 sym_line_comment,
5480 sym_block_comment,
5481 ACTIONS(305), 2,
5482 anon_sym_PLUS,
5483 anon_sym_DASH,
5484 ACTIONS(309), 3,
5485 anon_sym_STAR,
5486 anon_sym_div,
5487 anon_sym_mod,
5488 ACTIONS(263), 7,
5489 anon_sym_EQ,
5490 anon_sym_COLON,
5491 anon_sym_in,
5492 anon_sym_else,
5493 anon_sym_LT_DASH,
5494 anon_sym_LT,
5495 anon_sym_GT,
5496 ACTIONS(261), 27,
5497 ts_builtin_sym_end,
5498 anon_sym_SEMI,
5499 anon_sym_COMMA,
5500 anon_sym_RBRACE,
5501 anon_sym_RPAREN,
5502 anon_sym_PIPE,
5503 anon_sym_RBRACK,
5504 anon_sym_where,
5505 anon_sym_then,
5506 anon_sym_elseif,
5507 anon_sym_endif,
5508 anon_sym_LT_DASH_GT,
5509 anon_sym_DASH_GT,
5510 anon_sym_BSLASH_SLASH,
5511 anon_sym_xor,
5512 anon_sym_SLASH_BSLASH,
5513 anon_sym_EQ_EQ,
5514 anon_sym_BANG_EQ,
5515 anon_sym_LT_EQ,
5516 anon_sym_GT_EQ,
5517 anon_sym_subset,
5518 anon_sym_superset,
5519 anon_sym_union,
5520 anon_sym_diff,
5521 anon_sym_symdiff,
5522 anon_sym_intersect,
5523 anon_sym_DOT_DOT,
5524 [3008] = 3,
5525 ACTIONS(3), 2,
5526 sym_line_comment,
5527 sym_block_comment,
5528 ACTIONS(385), 10,
5529 anon_sym_EQ,
5530 anon_sym_COLON,
5531 anon_sym_in,
5532 anon_sym_else,
5533 anon_sym_LT_DASH,
5534 anon_sym_LT,
5535 anon_sym_GT,
5536 anon_sym_PLUS,
5537 anon_sym_DASH,
5538 anon_sym_SLASH,
5539 ACTIONS(383), 34,
5540 ts_builtin_sym_end,
5541 anon_sym_SEMI,
5542 anon_sym_COMMA,
5543 anon_sym_RBRACE,
5544 anon_sym_COLON_COLON,
5545 anon_sym_RPAREN,
5546 anon_sym_LBRACK,
5547 anon_sym_PIPE,
5548 anon_sym_RBRACK,
5549 anon_sym_where,
5550 anon_sym_then,
5551 anon_sym_elseif,
5552 anon_sym_endif,
5553 anon_sym_LT_DASH_GT,
5554 anon_sym_DASH_GT,
5555 anon_sym_BSLASH_SLASH,
5556 anon_sym_xor,
5557 anon_sym_SLASH_BSLASH,
5558 anon_sym_EQ_EQ,
5559 anon_sym_BANG_EQ,
5560 anon_sym_LT_EQ,
5561 anon_sym_GT_EQ,
5562 anon_sym_subset,
5563 anon_sym_superset,
5564 anon_sym_union,
5565 anon_sym_diff,
5566 anon_sym_symdiff,
5567 anon_sym_intersect,
5568 anon_sym_DOT_DOT,
5569 anon_sym_PLUS_PLUS,
5570 anon_sym_STAR,
5571 anon_sym_div,
5572 anon_sym_mod,
5573 anon_sym_CARET,
5574 [3061] = 22,
5575 ACTIONS(15), 1,
5576 anon_sym_LBRACE,
5577 ACTIONS(27), 1,
5578 anon_sym_LPAREN,
5579 ACTIONS(29), 1,
5580 anon_sym_LBRACK,
5581 ACTIONS(31), 1,
5582 anon_sym_if,
5583 ACTIONS(35), 1,
5584 anon_sym_let,
5585 ACTIONS(37), 1,
5586 anon_sym_not,
5587 ACTIONS(39), 1,
5588 anon_sym_DQUOTE,
5589 ACTIONS(45), 1,
5590 anon_sym_opt,
5591 ACTIONS(47), 1,
5592 anon_sym_set,
5593 ACTIONS(55), 1,
5594 sym_integer_literal,
5595 ACTIONS(192), 1,
5596 sym_identifier,
5597 ACTIONS(387), 1,
5598 anon_sym_RBRACK,
5599 STATE(80), 1,
5600 sym__expression,
5601 STATE(192), 1,
5602 sym_primitive_type,
5603 STATE(269), 1,
5604 sym_type_base,
5605 ACTIONS(3), 2,
5606 sym_line_comment,
5607 sym_block_comment,
5608 ACTIONS(33), 2,
5609 anon_sym_DASH,
5610 anon_sym_,
5611 ACTIONS(43), 2,
5612 anon_sym_var,
5613 anon_sym_par,
5614 ACTIONS(51), 2,
5615 sym_absent,
5616 sym_float_literal,
5617 ACTIONS(53), 2,
5618 anon_sym_true,
5619 anon_sym_false,
5620 ACTIONS(49), 5,
5621 anon_sym_ann,
5622 anon_sym_bool,
5623 anon_sym_float,
5624 anon_sym_int,
5625 anon_sym_string,
5626 STATE(32), 16,
5627 sym_parenthesised_expression,
5628 sym_array_comprehension,
5629 sym_call,
5630 sym_generator_call,
5631 sym_if_then_else,
5632 sym_indexed_access,
5633 sym_infix_operator,
5634 sym_let_expression,
5635 sym_prefix_operator,
5636 sym_set_comprehension,
5637 sym_string_interpolation,
5638 sym__literal,
5639 sym_array_literal,
5640 sym_boolean_literal,
5641 sym_set_literal,
5642 sym_string_literal,
5643 [3152] = 11,
5644 ACTIONS(265), 1,
5645 anon_sym_LBRACK,
5646 ACTIONS(293), 1,
5647 anon_sym_COLON_COLON,
5648 ACTIONS(301), 1,
5649 anon_sym_intersect,
5650 ACTIONS(307), 1,
5651 anon_sym_PLUS_PLUS,
5652 ACTIONS(311), 1,
5653 anon_sym_SLASH,
5654 ACTIONS(313), 1,
5655 anon_sym_CARET,
5656 ACTIONS(3), 2,
5657 sym_line_comment,
5658 sym_block_comment,
5659 ACTIONS(305), 2,
5660 anon_sym_PLUS,
5661 anon_sym_DASH,
5662 ACTIONS(309), 3,
5663 anon_sym_STAR,
5664 anon_sym_div,
5665 anon_sym_mod,
5666 ACTIONS(263), 7,
5667 anon_sym_EQ,
5668 anon_sym_COLON,
5669 anon_sym_in,
5670 anon_sym_else,
5671 anon_sym_LT_DASH,
5672 anon_sym_LT,
5673 anon_sym_GT,
5674 ACTIONS(261), 26,
5675 ts_builtin_sym_end,
5676 anon_sym_SEMI,
5677 anon_sym_COMMA,
5678 anon_sym_RBRACE,
5679 anon_sym_RPAREN,
5680 anon_sym_PIPE,
5681 anon_sym_RBRACK,
5682 anon_sym_where,
5683 anon_sym_then,
5684 anon_sym_elseif,
5685 anon_sym_endif,
5686 anon_sym_LT_DASH_GT,
5687 anon_sym_DASH_GT,
5688 anon_sym_BSLASH_SLASH,
5689 anon_sym_xor,
5690 anon_sym_SLASH_BSLASH,
5691 anon_sym_EQ_EQ,
5692 anon_sym_BANG_EQ,
5693 anon_sym_LT_EQ,
5694 anon_sym_GT_EQ,
5695 anon_sym_subset,
5696 anon_sym_superset,
5697 anon_sym_union,
5698 anon_sym_diff,
5699 anon_sym_symdiff,
5700 anon_sym_DOT_DOT,
5701 [3221] = 3,
5702 ACTIONS(3), 2,
5703 sym_line_comment,
5704 sym_block_comment,
5705 ACTIONS(391), 10,
5706 anon_sym_EQ,
5707 anon_sym_COLON,
5708 anon_sym_in,
5709 anon_sym_else,
5710 anon_sym_LT_DASH,
5711 anon_sym_LT,
5712 anon_sym_GT,
5713 anon_sym_PLUS,
5714 anon_sym_DASH,
5715 anon_sym_SLASH,
5716 ACTIONS(389), 34,
5717 ts_builtin_sym_end,
5718 anon_sym_SEMI,
5719 anon_sym_COMMA,
5720 anon_sym_RBRACE,
5721 anon_sym_COLON_COLON,
5722 anon_sym_RPAREN,
5723 anon_sym_LBRACK,
5724 anon_sym_PIPE,
5725 anon_sym_RBRACK,
5726 anon_sym_where,
5727 anon_sym_then,
5728 anon_sym_elseif,
5729 anon_sym_endif,
5730 anon_sym_LT_DASH_GT,
5731 anon_sym_DASH_GT,
5732 anon_sym_BSLASH_SLASH,
5733 anon_sym_xor,
5734 anon_sym_SLASH_BSLASH,
5735 anon_sym_EQ_EQ,
5736 anon_sym_BANG_EQ,
5737 anon_sym_LT_EQ,
5738 anon_sym_GT_EQ,
5739 anon_sym_subset,
5740 anon_sym_superset,
5741 anon_sym_union,
5742 anon_sym_diff,
5743 anon_sym_symdiff,
5744 anon_sym_intersect,
5745 anon_sym_DOT_DOT,
5746 anon_sym_PLUS_PLUS,
5747 anon_sym_STAR,
5748 anon_sym_div,
5749 anon_sym_mod,
5750 anon_sym_CARET,
5751 [3274] = 3,
5752 ACTIONS(3), 2,
5753 sym_line_comment,
5754 sym_block_comment,
5755 ACTIONS(395), 10,
5756 anon_sym_EQ,
5757 anon_sym_COLON,
5758 anon_sym_in,
5759 anon_sym_else,
5760 anon_sym_LT_DASH,
5761 anon_sym_LT,
5762 anon_sym_GT,
5763 anon_sym_PLUS,
5764 anon_sym_DASH,
5765 anon_sym_SLASH,
5766 ACTIONS(393), 34,
5767 ts_builtin_sym_end,
5768 anon_sym_SEMI,
5769 anon_sym_COMMA,
5770 anon_sym_RBRACE,
5771 anon_sym_COLON_COLON,
5772 anon_sym_RPAREN,
5773 anon_sym_LBRACK,
5774 anon_sym_PIPE,
5775 anon_sym_RBRACK,
5776 anon_sym_where,
5777 anon_sym_then,
5778 anon_sym_elseif,
5779 anon_sym_endif,
5780 anon_sym_LT_DASH_GT,
5781 anon_sym_DASH_GT,
5782 anon_sym_BSLASH_SLASH,
5783 anon_sym_xor,
5784 anon_sym_SLASH_BSLASH,
5785 anon_sym_EQ_EQ,
5786 anon_sym_BANG_EQ,
5787 anon_sym_LT_EQ,
5788 anon_sym_GT_EQ,
5789 anon_sym_subset,
5790 anon_sym_superset,
5791 anon_sym_union,
5792 anon_sym_diff,
5793 anon_sym_symdiff,
5794 anon_sym_intersect,
5795 anon_sym_DOT_DOT,
5796 anon_sym_PLUS_PLUS,
5797 anon_sym_STAR,
5798 anon_sym_div,
5799 anon_sym_mod,
5800 anon_sym_CARET,
5801 [3327] = 8,
5802 ACTIONS(265), 1,
5803 anon_sym_LBRACK,
5804 ACTIONS(293), 1,
5805 anon_sym_COLON_COLON,
5806 ACTIONS(311), 1,
5807 anon_sym_SLASH,
5808 ACTIONS(313), 1,
5809 anon_sym_CARET,
5810 ACTIONS(3), 2,
5811 sym_line_comment,
5812 sym_block_comment,
5813 ACTIONS(309), 3,
5814 anon_sym_STAR,
5815 anon_sym_div,
5816 anon_sym_mod,
5817 ACTIONS(263), 9,
5818 anon_sym_EQ,
5819 anon_sym_COLON,
5820 anon_sym_in,
5821 anon_sym_else,
5822 anon_sym_LT_DASH,
5823 anon_sym_LT,
5824 anon_sym_GT,
5825 anon_sym_PLUS,
5826 anon_sym_DASH,
5827 ACTIONS(261), 28,
5828 ts_builtin_sym_end,
5829 anon_sym_SEMI,
5830 anon_sym_COMMA,
5831 anon_sym_RBRACE,
5832 anon_sym_RPAREN,
5833 anon_sym_PIPE,
5834 anon_sym_RBRACK,
5835 anon_sym_where,
5836 anon_sym_then,
5837 anon_sym_elseif,
5838 anon_sym_endif,
5839 anon_sym_LT_DASH_GT,
5840 anon_sym_DASH_GT,
5841 anon_sym_BSLASH_SLASH,
5842 anon_sym_xor,
5843 anon_sym_SLASH_BSLASH,
5844 anon_sym_EQ_EQ,
5845 anon_sym_BANG_EQ,
5846 anon_sym_LT_EQ,
5847 anon_sym_GT_EQ,
5848 anon_sym_subset,
5849 anon_sym_superset,
5850 anon_sym_union,
5851 anon_sym_diff,
5852 anon_sym_symdiff,
5853 anon_sym_intersect,
5854 anon_sym_DOT_DOT,
5855 anon_sym_PLUS_PLUS,
5856 [3390] = 3,
5857 ACTIONS(3), 2,
5858 sym_line_comment,
5859 sym_block_comment,
5860 ACTIONS(399), 10,
5861 anon_sym_EQ,
5862 anon_sym_COLON,
5863 anon_sym_in,
5864 anon_sym_else,
5865 anon_sym_LT_DASH,
5866 anon_sym_LT,
5867 anon_sym_GT,
5868 anon_sym_PLUS,
5869 anon_sym_DASH,
5870 anon_sym_SLASH,
5871 ACTIONS(397), 34,
5872 ts_builtin_sym_end,
5873 anon_sym_SEMI,
5874 anon_sym_COMMA,
5875 anon_sym_RBRACE,
5876 anon_sym_COLON_COLON,
5877 anon_sym_RPAREN,
5878 anon_sym_LBRACK,
5879 anon_sym_PIPE,
5880 anon_sym_RBRACK,
5881 anon_sym_where,
5882 anon_sym_then,
5883 anon_sym_elseif,
5884 anon_sym_endif,
5885 anon_sym_LT_DASH_GT,
5886 anon_sym_DASH_GT,
5887 anon_sym_BSLASH_SLASH,
5888 anon_sym_xor,
5889 anon_sym_SLASH_BSLASH,
5890 anon_sym_EQ_EQ,
5891 anon_sym_BANG_EQ,
5892 anon_sym_LT_EQ,
5893 anon_sym_GT_EQ,
5894 anon_sym_subset,
5895 anon_sym_superset,
5896 anon_sym_union,
5897 anon_sym_diff,
5898 anon_sym_symdiff,
5899 anon_sym_intersect,
5900 anon_sym_DOT_DOT,
5901 anon_sym_PLUS_PLUS,
5902 anon_sym_STAR,
5903 anon_sym_div,
5904 anon_sym_mod,
5905 anon_sym_CARET,
5906 [3443] = 6,
5907 ACTIONS(265), 1,
5908 anon_sym_LBRACK,
5909 ACTIONS(293), 1,
5910 anon_sym_COLON_COLON,
5911 ACTIONS(313), 1,
5912 anon_sym_CARET,
5913 ACTIONS(3), 2,
5914 sym_line_comment,
5915 sym_block_comment,
5916 ACTIONS(263), 10,
5917 anon_sym_EQ,
5918 anon_sym_COLON,
5919 anon_sym_in,
5920 anon_sym_else,
5921 anon_sym_LT_DASH,
5922 anon_sym_LT,
5923 anon_sym_GT,
5924 anon_sym_PLUS,
5925 anon_sym_DASH,
5926 anon_sym_SLASH,
5927 ACTIONS(261), 31,
5928 ts_builtin_sym_end,
5929 anon_sym_SEMI,
5930 anon_sym_COMMA,
5931 anon_sym_RBRACE,
5932 anon_sym_RPAREN,
5933 anon_sym_PIPE,
5934 anon_sym_RBRACK,
5935 anon_sym_where,
5936 anon_sym_then,
5937 anon_sym_elseif,
5938 anon_sym_endif,
5939 anon_sym_LT_DASH_GT,
5940 anon_sym_DASH_GT,
5941 anon_sym_BSLASH_SLASH,
5942 anon_sym_xor,
5943 anon_sym_SLASH_BSLASH,
5944 anon_sym_EQ_EQ,
5945 anon_sym_BANG_EQ,
5946 anon_sym_LT_EQ,
5947 anon_sym_GT_EQ,
5948 anon_sym_subset,
5949 anon_sym_superset,
5950 anon_sym_union,
5951 anon_sym_diff,
5952 anon_sym_symdiff,
5953 anon_sym_intersect,
5954 anon_sym_DOT_DOT,
5955 anon_sym_PLUS_PLUS,
5956 anon_sym_STAR,
5957 anon_sym_div,
5958 anon_sym_mod,
5959 [3502] = 5,
5960 ACTIONS(265), 1,
5961 anon_sym_LBRACK,
5962 ACTIONS(293), 1,
5963 anon_sym_COLON_COLON,
5964 ACTIONS(3), 2,
5965 sym_line_comment,
5966 sym_block_comment,
5967 ACTIONS(403), 10,
5968 anon_sym_EQ,
5969 anon_sym_COLON,
5970 anon_sym_in,
5971 anon_sym_else,
5972 anon_sym_LT_DASH,
5973 anon_sym_LT,
5974 anon_sym_GT,
5975 anon_sym_PLUS,
5976 anon_sym_DASH,
5977 anon_sym_SLASH,
5978 ACTIONS(401), 32,
5979 ts_builtin_sym_end,
5980 anon_sym_SEMI,
5981 anon_sym_COMMA,
5982 anon_sym_RBRACE,
5983 anon_sym_RPAREN,
5984 anon_sym_PIPE,
5985 anon_sym_RBRACK,
5986 anon_sym_where,
5987 anon_sym_then,
5988 anon_sym_elseif,
5989 anon_sym_endif,
5990 anon_sym_LT_DASH_GT,
5991 anon_sym_DASH_GT,
5992 anon_sym_BSLASH_SLASH,
5993 anon_sym_xor,
5994 anon_sym_SLASH_BSLASH,
5995 anon_sym_EQ_EQ,
5996 anon_sym_BANG_EQ,
5997 anon_sym_LT_EQ,
5998 anon_sym_GT_EQ,
5999 anon_sym_subset,
6000 anon_sym_superset,
6001 anon_sym_union,
6002 anon_sym_diff,
6003 anon_sym_symdiff,
6004 anon_sym_intersect,
6005 anon_sym_DOT_DOT,
6006 anon_sym_PLUS_PLUS,
6007 anon_sym_STAR,
6008 anon_sym_div,
6009 anon_sym_mod,
6010 anon_sym_CARET,
6011 [3559] = 3,
6012 ACTIONS(3), 2,
6013 sym_line_comment,
6014 sym_block_comment,
6015 ACTIONS(407), 10,
6016 anon_sym_EQ,
6017 anon_sym_COLON,
6018 anon_sym_in,
6019 anon_sym_else,
6020 anon_sym_LT_DASH,
6021 anon_sym_LT,
6022 anon_sym_GT,
6023 anon_sym_PLUS,
6024 anon_sym_DASH,
6025 anon_sym_SLASH,
6026 ACTIONS(405), 34,
6027 ts_builtin_sym_end,
6028 anon_sym_SEMI,
6029 anon_sym_COMMA,
6030 anon_sym_RBRACE,
6031 anon_sym_COLON_COLON,
6032 anon_sym_RPAREN,
6033 anon_sym_LBRACK,
6034 anon_sym_PIPE,
6035 anon_sym_RBRACK,
6036 anon_sym_where,
6037 anon_sym_then,
6038 anon_sym_elseif,
6039 anon_sym_endif,
6040 anon_sym_LT_DASH_GT,
6041 anon_sym_DASH_GT,
6042 anon_sym_BSLASH_SLASH,
6043 anon_sym_xor,
6044 anon_sym_SLASH_BSLASH,
6045 anon_sym_EQ_EQ,
6046 anon_sym_BANG_EQ,
6047 anon_sym_LT_EQ,
6048 anon_sym_GT_EQ,
6049 anon_sym_subset,
6050 anon_sym_superset,
6051 anon_sym_union,
6052 anon_sym_diff,
6053 anon_sym_symdiff,
6054 anon_sym_intersect,
6055 anon_sym_DOT_DOT,
6056 anon_sym_PLUS_PLUS,
6057 anon_sym_STAR,
6058 anon_sym_div,
6059 anon_sym_mod,
6060 anon_sym_CARET,
6061 [3612] = 3,
6062 ACTIONS(3), 2,
6063 sym_line_comment,
6064 sym_block_comment,
6065 ACTIONS(411), 10,
6066 anon_sym_EQ,
6067 anon_sym_COLON,
6068 anon_sym_in,
6069 anon_sym_else,
6070 anon_sym_LT_DASH,
6071 anon_sym_LT,
6072 anon_sym_GT,
6073 anon_sym_PLUS,
6074 anon_sym_DASH,
6075 anon_sym_SLASH,
6076 ACTIONS(409), 34,
6077 ts_builtin_sym_end,
6078 anon_sym_SEMI,
6079 anon_sym_COMMA,
6080 anon_sym_RBRACE,
6081 anon_sym_COLON_COLON,
6082 anon_sym_RPAREN,
6083 anon_sym_LBRACK,
6084 anon_sym_PIPE,
6085 anon_sym_RBRACK,
6086 anon_sym_where,
6087 anon_sym_then,
6088 anon_sym_elseif,
6089 anon_sym_endif,
6090 anon_sym_LT_DASH_GT,
6091 anon_sym_DASH_GT,
6092 anon_sym_BSLASH_SLASH,
6093 anon_sym_xor,
6094 anon_sym_SLASH_BSLASH,
6095 anon_sym_EQ_EQ,
6096 anon_sym_BANG_EQ,
6097 anon_sym_LT_EQ,
6098 anon_sym_GT_EQ,
6099 anon_sym_subset,
6100 anon_sym_superset,
6101 anon_sym_union,
6102 anon_sym_diff,
6103 anon_sym_symdiff,
6104 anon_sym_intersect,
6105 anon_sym_DOT_DOT,
6106 anon_sym_PLUS_PLUS,
6107 anon_sym_STAR,
6108 anon_sym_div,
6109 anon_sym_mod,
6110 anon_sym_CARET,
6111 [3665] = 3,
6112 ACTIONS(3), 2,
6113 sym_line_comment,
6114 sym_block_comment,
6115 ACTIONS(415), 10,
6116 anon_sym_EQ,
6117 anon_sym_COLON,
6118 anon_sym_in,
6119 anon_sym_else,
6120 anon_sym_LT_DASH,
6121 anon_sym_LT,
6122 anon_sym_GT,
6123 anon_sym_PLUS,
6124 anon_sym_DASH,
6125 anon_sym_SLASH,
6126 ACTIONS(413), 34,
6127 ts_builtin_sym_end,
6128 anon_sym_SEMI,
6129 anon_sym_COMMA,
6130 anon_sym_RBRACE,
6131 anon_sym_COLON_COLON,
6132 anon_sym_RPAREN,
6133 anon_sym_LBRACK,
6134 anon_sym_PIPE,
6135 anon_sym_RBRACK,
6136 anon_sym_where,
6137 anon_sym_then,
6138 anon_sym_elseif,
6139 anon_sym_endif,
6140 anon_sym_LT_DASH_GT,
6141 anon_sym_DASH_GT,
6142 anon_sym_BSLASH_SLASH,
6143 anon_sym_xor,
6144 anon_sym_SLASH_BSLASH,
6145 anon_sym_EQ_EQ,
6146 anon_sym_BANG_EQ,
6147 anon_sym_LT_EQ,
6148 anon_sym_GT_EQ,
6149 anon_sym_subset,
6150 anon_sym_superset,
6151 anon_sym_union,
6152 anon_sym_diff,
6153 anon_sym_symdiff,
6154 anon_sym_intersect,
6155 anon_sym_DOT_DOT,
6156 anon_sym_PLUS_PLUS,
6157 anon_sym_STAR,
6158 anon_sym_div,
6159 anon_sym_mod,
6160 anon_sym_CARET,
6161 [3718] = 5,
6162 ACTIONS(265), 1,
6163 anon_sym_LBRACK,
6164 ACTIONS(293), 1,
6165 anon_sym_COLON_COLON,
6166 ACTIONS(3), 2,
6167 sym_line_comment,
6168 sym_block_comment,
6169 ACTIONS(263), 10,
6170 anon_sym_EQ,
6171 anon_sym_COLON,
6172 anon_sym_in,
6173 anon_sym_else,
6174 anon_sym_LT_DASH,
6175 anon_sym_LT,
6176 anon_sym_GT,
6177 anon_sym_PLUS,
6178 anon_sym_DASH,
6179 anon_sym_SLASH,
6180 ACTIONS(261), 32,
6181 ts_builtin_sym_end,
6182 anon_sym_SEMI,
6183 anon_sym_COMMA,
6184 anon_sym_RBRACE,
6185 anon_sym_RPAREN,
6186 anon_sym_PIPE,
6187 anon_sym_RBRACK,
6188 anon_sym_where,
6189 anon_sym_then,
6190 anon_sym_elseif,
6191 anon_sym_endif,
6192 anon_sym_LT_DASH_GT,
6193 anon_sym_DASH_GT,
6194 anon_sym_BSLASH_SLASH,
6195 anon_sym_xor,
6196 anon_sym_SLASH_BSLASH,
6197 anon_sym_EQ_EQ,
6198 anon_sym_BANG_EQ,
6199 anon_sym_LT_EQ,
6200 anon_sym_GT_EQ,
6201 anon_sym_subset,
6202 anon_sym_superset,
6203 anon_sym_union,
6204 anon_sym_diff,
6205 anon_sym_symdiff,
6206 anon_sym_intersect,
6207 anon_sym_DOT_DOT,
6208 anon_sym_PLUS_PLUS,
6209 anon_sym_STAR,
6210 anon_sym_div,
6211 anon_sym_mod,
6212 anon_sym_CARET,
6213 [3775] = 3,
6214 ACTIONS(3), 2,
6215 sym_line_comment,
6216 sym_block_comment,
6217 ACTIONS(419), 10,
6218 anon_sym_EQ,
6219 anon_sym_COLON,
6220 anon_sym_in,
6221 anon_sym_else,
6222 anon_sym_LT_DASH,
6223 anon_sym_LT,
6224 anon_sym_GT,
6225 anon_sym_PLUS,
6226 anon_sym_DASH,
6227 anon_sym_SLASH,
6228 ACTIONS(417), 34,
6229 ts_builtin_sym_end,
6230 anon_sym_SEMI,
6231 anon_sym_COMMA,
6232 anon_sym_RBRACE,
6233 anon_sym_COLON_COLON,
6234 anon_sym_RPAREN,
6235 anon_sym_LBRACK,
6236 anon_sym_PIPE,
6237 anon_sym_RBRACK,
6238 anon_sym_where,
6239 anon_sym_then,
6240 anon_sym_elseif,
6241 anon_sym_endif,
6242 anon_sym_LT_DASH_GT,
6243 anon_sym_DASH_GT,
6244 anon_sym_BSLASH_SLASH,
6245 anon_sym_xor,
6246 anon_sym_SLASH_BSLASH,
6247 anon_sym_EQ_EQ,
6248 anon_sym_BANG_EQ,
6249 anon_sym_LT_EQ,
6250 anon_sym_GT_EQ,
6251 anon_sym_subset,
6252 anon_sym_superset,
6253 anon_sym_union,
6254 anon_sym_diff,
6255 anon_sym_symdiff,
6256 anon_sym_intersect,
6257 anon_sym_DOT_DOT,
6258 anon_sym_PLUS_PLUS,
6259 anon_sym_STAR,
6260 anon_sym_div,
6261 anon_sym_mod,
6262 anon_sym_CARET,
6263 [3828] = 3,
6264 ACTIONS(3), 2,
6265 sym_line_comment,
6266 sym_block_comment,
6267 ACTIONS(423), 10,
6268 anon_sym_EQ,
6269 anon_sym_COLON,
6270 anon_sym_in,
6271 anon_sym_else,
6272 anon_sym_LT_DASH,
6273 anon_sym_LT,
6274 anon_sym_GT,
6275 anon_sym_PLUS,
6276 anon_sym_DASH,
6277 anon_sym_SLASH,
6278 ACTIONS(421), 34,
6279 ts_builtin_sym_end,
6280 anon_sym_SEMI,
6281 anon_sym_COMMA,
6282 anon_sym_RBRACE,
6283 anon_sym_COLON_COLON,
6284 anon_sym_RPAREN,
6285 anon_sym_LBRACK,
6286 anon_sym_PIPE,
6287 anon_sym_RBRACK,
6288 anon_sym_where,
6289 anon_sym_then,
6290 anon_sym_elseif,
6291 anon_sym_endif,
6292 anon_sym_LT_DASH_GT,
6293 anon_sym_DASH_GT,
6294 anon_sym_BSLASH_SLASH,
6295 anon_sym_xor,
6296 anon_sym_SLASH_BSLASH,
6297 anon_sym_EQ_EQ,
6298 anon_sym_BANG_EQ,
6299 anon_sym_LT_EQ,
6300 anon_sym_GT_EQ,
6301 anon_sym_subset,
6302 anon_sym_superset,
6303 anon_sym_union,
6304 anon_sym_diff,
6305 anon_sym_symdiff,
6306 anon_sym_intersect,
6307 anon_sym_DOT_DOT,
6308 anon_sym_PLUS_PLUS,
6309 anon_sym_STAR,
6310 anon_sym_div,
6311 anon_sym_mod,
6312 anon_sym_CARET,
6313 [3881] = 3,
6314 ACTIONS(3), 2,
6315 sym_line_comment,
6316 sym_block_comment,
6317 ACTIONS(427), 10,
6318 anon_sym_EQ,
6319 anon_sym_COLON,
6320 anon_sym_in,
6321 anon_sym_else,
6322 anon_sym_LT_DASH,
6323 anon_sym_LT,
6324 anon_sym_GT,
6325 anon_sym_PLUS,
6326 anon_sym_DASH,
6327 anon_sym_SLASH,
6328 ACTIONS(425), 34,
6329 ts_builtin_sym_end,
6330 anon_sym_SEMI,
6331 anon_sym_COMMA,
6332 anon_sym_RBRACE,
6333 anon_sym_COLON_COLON,
6334 anon_sym_RPAREN,
6335 anon_sym_LBRACK,
6336 anon_sym_PIPE,
6337 anon_sym_RBRACK,
6338 anon_sym_where,
6339 anon_sym_then,
6340 anon_sym_elseif,
6341 anon_sym_endif,
6342 anon_sym_LT_DASH_GT,
6343 anon_sym_DASH_GT,
6344 anon_sym_BSLASH_SLASH,
6345 anon_sym_xor,
6346 anon_sym_SLASH_BSLASH,
6347 anon_sym_EQ_EQ,
6348 anon_sym_BANG_EQ,
6349 anon_sym_LT_EQ,
6350 anon_sym_GT_EQ,
6351 anon_sym_subset,
6352 anon_sym_superset,
6353 anon_sym_union,
6354 anon_sym_diff,
6355 anon_sym_symdiff,
6356 anon_sym_intersect,
6357 anon_sym_DOT_DOT,
6358 anon_sym_PLUS_PLUS,
6359 anon_sym_STAR,
6360 anon_sym_div,
6361 anon_sym_mod,
6362 anon_sym_CARET,
6363 [3934] = 3,
6364 ACTIONS(3), 2,
6365 sym_line_comment,
6366 sym_block_comment,
6367 ACTIONS(431), 10,
6368 anon_sym_EQ,
6369 anon_sym_COLON,
6370 anon_sym_in,
6371 anon_sym_else,
6372 anon_sym_LT_DASH,
6373 anon_sym_LT,
6374 anon_sym_GT,
6375 anon_sym_PLUS,
6376 anon_sym_DASH,
6377 anon_sym_SLASH,
6378 ACTIONS(429), 34,
6379 ts_builtin_sym_end,
6380 anon_sym_SEMI,
6381 anon_sym_COMMA,
6382 anon_sym_RBRACE,
6383 anon_sym_COLON_COLON,
6384 anon_sym_RPAREN,
6385 anon_sym_LBRACK,
6386 anon_sym_PIPE,
6387 anon_sym_RBRACK,
6388 anon_sym_where,
6389 anon_sym_then,
6390 anon_sym_elseif,
6391 anon_sym_endif,
6392 anon_sym_LT_DASH_GT,
6393 anon_sym_DASH_GT,
6394 anon_sym_BSLASH_SLASH,
6395 anon_sym_xor,
6396 anon_sym_SLASH_BSLASH,
6397 anon_sym_EQ_EQ,
6398 anon_sym_BANG_EQ,
6399 anon_sym_LT_EQ,
6400 anon_sym_GT_EQ,
6401 anon_sym_subset,
6402 anon_sym_superset,
6403 anon_sym_union,
6404 anon_sym_diff,
6405 anon_sym_symdiff,
6406 anon_sym_intersect,
6407 anon_sym_DOT_DOT,
6408 anon_sym_PLUS_PLUS,
6409 anon_sym_STAR,
6410 anon_sym_div,
6411 anon_sym_mod,
6412 anon_sym_CARET,
6413 [3987] = 21,
6414 ACTIONS(265), 1,
6415 anon_sym_LBRACK,
6416 ACTIONS(293), 1,
6417 anon_sym_COLON_COLON,
6418 ACTIONS(295), 1,
6419 anon_sym_union,
6420 ACTIONS(297), 1,
6421 anon_sym_diff,
6422 ACTIONS(299), 1,
6423 anon_sym_symdiff,
6424 ACTIONS(301), 1,
6425 anon_sym_intersect,
6426 ACTIONS(303), 1,
6427 anon_sym_DOT_DOT,
6428 ACTIONS(307), 1,
6429 anon_sym_PLUS_PLUS,
6430 ACTIONS(311), 1,
6431 anon_sym_SLASH,
6432 ACTIONS(313), 1,
6433 anon_sym_CARET,
6434 ACTIONS(319), 1,
6435 anon_sym_LT_DASH,
6436 ACTIONS(321), 1,
6437 anon_sym_SLASH_BSLASH,
6438 ACTIONS(3), 2,
6439 sym_line_comment,
6440 sym_block_comment,
6441 ACTIONS(305), 2,
6442 anon_sym_PLUS,
6443 anon_sym_DASH,
6444 ACTIONS(317), 2,
6445 anon_sym_DASH_GT,
6446 anon_sym_xor,
6447 ACTIONS(337), 2,
6448 anon_sym_LT_DASH_GT,
6449 anon_sym_BSLASH_SLASH,
6450 ACTIONS(435), 2,
6451 anon_sym_COLON,
6452 anon_sym_else,
6453 ACTIONS(309), 3,
6454 anon_sym_STAR,
6455 anon_sym_div,
6456 anon_sym_mod,
6457 ACTIONS(315), 4,
6458 anon_sym_EQ,
6459 anon_sym_in,
6460 anon_sym_LT,
6461 anon_sym_GT,
6462 ACTIONS(323), 6,
6463 anon_sym_EQ_EQ,
6464 anon_sym_BANG_EQ,
6465 anon_sym_LT_EQ,
6466 anon_sym_GT_EQ,
6467 anon_sym_subset,
6468 anon_sym_superset,
6469 ACTIONS(433), 11,
6470 ts_builtin_sym_end,
6471 anon_sym_SEMI,
6472 anon_sym_COMMA,
6473 anon_sym_RBRACE,
6474 anon_sym_RPAREN,
6475 anon_sym_PIPE,
6476 anon_sym_RBRACK,
6477 anon_sym_where,
6478 anon_sym_then,
6479 anon_sym_elseif,
6480 anon_sym_endif,
6481 [4076] = 3,
6482 ACTIONS(3), 2,
6483 sym_line_comment,
6484 sym_block_comment,
6485 ACTIONS(439), 10,
6486 anon_sym_EQ,
6487 anon_sym_COLON,
6488 anon_sym_in,
6489 anon_sym_else,
6490 anon_sym_LT_DASH,
6491 anon_sym_LT,
6492 anon_sym_GT,
6493 anon_sym_PLUS,
6494 anon_sym_DASH,
6495 anon_sym_SLASH,
6496 ACTIONS(437), 34,
6497 ts_builtin_sym_end,
6498 anon_sym_SEMI,
6499 anon_sym_COMMA,
6500 anon_sym_RBRACE,
6501 anon_sym_COLON_COLON,
6502 anon_sym_RPAREN,
6503 anon_sym_LBRACK,
6504 anon_sym_PIPE,
6505 anon_sym_RBRACK,
6506 anon_sym_where,
6507 anon_sym_then,
6508 anon_sym_elseif,
6509 anon_sym_endif,
6510 anon_sym_LT_DASH_GT,
6511 anon_sym_DASH_GT,
6512 anon_sym_BSLASH_SLASH,
6513 anon_sym_xor,
6514 anon_sym_SLASH_BSLASH,
6515 anon_sym_EQ_EQ,
6516 anon_sym_BANG_EQ,
6517 anon_sym_LT_EQ,
6518 anon_sym_GT_EQ,
6519 anon_sym_subset,
6520 anon_sym_superset,
6521 anon_sym_union,
6522 anon_sym_diff,
6523 anon_sym_symdiff,
6524 anon_sym_intersect,
6525 anon_sym_DOT_DOT,
6526 anon_sym_PLUS_PLUS,
6527 anon_sym_STAR,
6528 anon_sym_div,
6529 anon_sym_mod,
6530 anon_sym_CARET,
6531 [4129] = 21,
6532 ACTIONS(15), 1,
6533 anon_sym_LBRACE,
6534 ACTIONS(27), 1,
6535 anon_sym_LPAREN,
6536 ACTIONS(29), 1,
6537 anon_sym_LBRACK,
6538 ACTIONS(31), 1,
6539 anon_sym_if,
6540 ACTIONS(35), 1,
6541 anon_sym_let,
6542 ACTIONS(37), 1,
6543 anon_sym_not,
6544 ACTIONS(39), 1,
6545 anon_sym_DQUOTE,
6546 ACTIONS(45), 1,
6547 anon_sym_opt,
6548 ACTIONS(47), 1,
6549 anon_sym_set,
6550 ACTIONS(55), 1,
6551 sym_integer_literal,
6552 ACTIONS(192), 1,
6553 sym_identifier,
6554 STATE(80), 1,
6555 sym__expression,
6556 STATE(192), 1,
6557 sym_primitive_type,
6558 STATE(269), 1,
6559 sym_type_base,
6560 ACTIONS(3), 2,
6561 sym_line_comment,
6562 sym_block_comment,
6563 ACTIONS(33), 2,
6564 anon_sym_DASH,
6565 anon_sym_,
6566 ACTIONS(43), 2,
6567 anon_sym_var,
6568 anon_sym_par,
6569 ACTIONS(51), 2,
6570 sym_absent,
6571 sym_float_literal,
6572 ACTIONS(53), 2,
6573 anon_sym_true,
6574 anon_sym_false,
6575 ACTIONS(49), 5,
6576 anon_sym_ann,
6577 anon_sym_bool,
6578 anon_sym_float,
6579 anon_sym_int,
6580 anon_sym_string,
6581 STATE(32), 16,
6582 sym_parenthesised_expression,
6583 sym_array_comprehension,
6584 sym_call,
6585 sym_generator_call,
6586 sym_if_then_else,
6587 sym_indexed_access,
6588 sym_infix_operator,
6589 sym_let_expression,
6590 sym_prefix_operator,
6591 sym_set_comprehension,
6592 sym_string_interpolation,
6593 sym__literal,
6594 sym_array_literal,
6595 sym_boolean_literal,
6596 sym_set_literal,
6597 sym_string_literal,
6598 [4217] = 21,
6599 ACTIONS(15), 1,
6600 anon_sym_LBRACE,
6601 ACTIONS(27), 1,
6602 anon_sym_LPAREN,
6603 ACTIONS(29), 1,
6604 anon_sym_LBRACK,
6605 ACTIONS(31), 1,
6606 anon_sym_if,
6607 ACTIONS(35), 1,
6608 anon_sym_let,
6609 ACTIONS(37), 1,
6610 anon_sym_not,
6611 ACTIONS(39), 1,
6612 anon_sym_DQUOTE,
6613 ACTIONS(45), 1,
6614 anon_sym_opt,
6615 ACTIONS(47), 1,
6616 anon_sym_set,
6617 ACTIONS(55), 1,
6618 sym_integer_literal,
6619 ACTIONS(192), 1,
6620 sym_identifier,
6621 STATE(80), 1,
6622 sym__expression,
6623 STATE(192), 1,
6624 sym_primitive_type,
6625 STATE(223), 1,
6626 sym_type_base,
6627 ACTIONS(3), 2,
6628 sym_line_comment,
6629 sym_block_comment,
6630 ACTIONS(33), 2,
6631 anon_sym_DASH,
6632 anon_sym_,
6633 ACTIONS(43), 2,
6634 anon_sym_var,
6635 anon_sym_par,
6636 ACTIONS(51), 2,
6637 sym_absent,
6638 sym_float_literal,
6639 ACTIONS(53), 2,
6640 anon_sym_true,
6641 anon_sym_false,
6642 ACTIONS(49), 5,
6643 anon_sym_ann,
6644 anon_sym_bool,
6645 anon_sym_float,
6646 anon_sym_int,
6647 anon_sym_string,
6648 STATE(32), 16,
6649 sym_parenthesised_expression,
6650 sym_array_comprehension,
6651 sym_call,
6652 sym_generator_call,
6653 sym_if_then_else,
6654 sym_indexed_access,
6655 sym_infix_operator,
6656 sym_let_expression,
6657 sym_prefix_operator,
6658 sym_set_comprehension,
6659 sym_string_interpolation,
6660 sym__literal,
6661 sym_array_literal,
6662 sym_boolean_literal,
6663 sym_set_literal,
6664 sym_string_literal,
6665 [4305] = 19,
6666 ACTIONS(15), 1,
6667 anon_sym_LBRACE,
6668 ACTIONS(27), 1,
6669 anon_sym_LPAREN,
6670 ACTIONS(29), 1,
6671 anon_sym_LBRACK,
6672 ACTIONS(31), 1,
6673 anon_sym_if,
6674 ACTIONS(35), 1,
6675 anon_sym_let,
6676 ACTIONS(37), 1,
6677 anon_sym_not,
6678 ACTIONS(39), 1,
6679 anon_sym_DQUOTE,
6680 ACTIONS(55), 1,
6681 sym_integer_literal,
6682 ACTIONS(192), 1,
6683 sym_identifier,
6684 ACTIONS(441), 1,
6685 anon_sym_opt,
6686 ACTIONS(443), 1,
6687 anon_sym_set,
6688 STATE(88), 1,
6689 sym__expression,
6690 STATE(202), 1,
6691 sym_primitive_type,
6692 ACTIONS(3), 2,
6693 sym_line_comment,
6694 sym_block_comment,
6695 ACTIONS(33), 2,
6696 anon_sym_DASH,
6697 anon_sym_,
6698 ACTIONS(51), 2,
6699 sym_absent,
6700 sym_float_literal,
6701 ACTIONS(53), 2,
6702 anon_sym_true,
6703 anon_sym_false,
6704 ACTIONS(49), 5,
6705 anon_sym_ann,
6706 anon_sym_bool,
6707 anon_sym_float,
6708 anon_sym_int,
6709 anon_sym_string,
6710 STATE(32), 16,
6711 sym_parenthesised_expression,
6712 sym_array_comprehension,
6713 sym_call,
6714 sym_generator_call,
6715 sym_if_then_else,
6716 sym_indexed_access,
6717 sym_infix_operator,
6718 sym_let_expression,
6719 sym_prefix_operator,
6720 sym_set_comprehension,
6721 sym_string_interpolation,
6722 sym__literal,
6723 sym_array_literal,
6724 sym_boolean_literal,
6725 sym_set_literal,
6726 sym_string_literal,
6727 [4386] = 18,
6728 ACTIONS(15), 1,
6729 anon_sym_LBRACE,
6730 ACTIONS(27), 1,
6731 anon_sym_LPAREN,
6732 ACTIONS(29), 1,
6733 anon_sym_LBRACK,
6734 ACTIONS(31), 1,
6735 anon_sym_if,
6736 ACTIONS(35), 1,
6737 anon_sym_let,
6738 ACTIONS(37), 1,
6739 anon_sym_not,
6740 ACTIONS(39), 1,
6741 anon_sym_DQUOTE,
6742 ACTIONS(55), 1,
6743 sym_integer_literal,
6744 ACTIONS(192), 1,
6745 sym_identifier,
6746 ACTIONS(445), 1,
6747 anon_sym_set,
6748 STATE(77), 1,
6749 sym__expression,
6750 STATE(206), 1,
6751 sym_primitive_type,
6752 ACTIONS(3), 2,
6753 sym_line_comment,
6754 sym_block_comment,
6755 ACTIONS(33), 2,
6756 anon_sym_DASH,
6757 anon_sym_,
6758 ACTIONS(51), 2,
6759 sym_absent,
6760 sym_float_literal,
6761 ACTIONS(53), 2,
6762 anon_sym_true,
6763 anon_sym_false,
6764 ACTIONS(49), 5,
6765 anon_sym_ann,
6766 anon_sym_bool,
6767 anon_sym_float,
6768 anon_sym_int,
6769 anon_sym_string,
6770 STATE(32), 16,
6771 sym_parenthesised_expression,
6772 sym_array_comprehension,
6773 sym_call,
6774 sym_generator_call,
6775 sym_if_then_else,
6776 sym_indexed_access,
6777 sym_infix_operator,
6778 sym_let_expression,
6779 sym_prefix_operator,
6780 sym_set_comprehension,
6781 sym_string_interpolation,
6782 sym__literal,
6783 sym_array_literal,
6784 sym_boolean_literal,
6785 sym_set_literal,
6786 sym_string_literal,
6787 [4464] = 18,
6788 ACTIONS(15), 1,
6789 anon_sym_LBRACE,
6790 ACTIONS(27), 1,
6791 anon_sym_LPAREN,
6792 ACTIONS(29), 1,
6793 anon_sym_LBRACK,
6794 ACTIONS(31), 1,
6795 anon_sym_if,
6796 ACTIONS(35), 1,
6797 anon_sym_let,
6798 ACTIONS(37), 1,
6799 anon_sym_not,
6800 ACTIONS(39), 1,
6801 anon_sym_DQUOTE,
6802 ACTIONS(55), 1,
6803 sym_integer_literal,
6804 ACTIONS(192), 1,
6805 sym_identifier,
6806 ACTIONS(447), 1,
6807 anon_sym_set,
6808 STATE(83), 1,
6809 sym__expression,
6810 STATE(197), 1,
6811 sym_primitive_type,
6812 ACTIONS(3), 2,
6813 sym_line_comment,
6814 sym_block_comment,
6815 ACTIONS(33), 2,
6816 anon_sym_DASH,
6817 anon_sym_,
6818 ACTIONS(51), 2,
6819 sym_absent,
6820 sym_float_literal,
6821 ACTIONS(53), 2,
6822 anon_sym_true,
6823 anon_sym_false,
6824 ACTIONS(49), 5,
6825 anon_sym_ann,
6826 anon_sym_bool,
6827 anon_sym_float,
6828 anon_sym_int,
6829 anon_sym_string,
6830 STATE(32), 16,
6831 sym_parenthesised_expression,
6832 sym_array_comprehension,
6833 sym_call,
6834 sym_generator_call,
6835 sym_if_then_else,
6836 sym_indexed_access,
6837 sym_infix_operator,
6838 sym_let_expression,
6839 sym_prefix_operator,
6840 sym_set_comprehension,
6841 sym_string_interpolation,
6842 sym__literal,
6843 sym_array_literal,
6844 sym_boolean_literal,
6845 sym_set_literal,
6846 sym_string_literal,
6847 [4542] = 17,
6848 ACTIONS(15), 1,
6849 anon_sym_LBRACE,
6850 ACTIONS(27), 1,
6851 anon_sym_LPAREN,
6852 ACTIONS(29), 1,
6853 anon_sym_LBRACK,
6854 ACTIONS(31), 1,
6855 anon_sym_if,
6856 ACTIONS(35), 1,
6857 anon_sym_let,
6858 ACTIONS(37), 1,
6859 anon_sym_not,
6860 ACTIONS(39), 1,
6861 anon_sym_DQUOTE,
6862 ACTIONS(55), 1,
6863 sym_integer_literal,
6864 ACTIONS(192), 1,
6865 sym_identifier,
6866 STATE(89), 1,
6867 sym__expression,
6868 STATE(204), 1,
6869 sym_primitive_type,
6870 ACTIONS(3), 2,
6871 sym_line_comment,
6872 sym_block_comment,
6873 ACTIONS(33), 2,
6874 anon_sym_DASH,
6875 anon_sym_,
6876 ACTIONS(51), 2,
6877 sym_absent,
6878 sym_float_literal,
6879 ACTIONS(53), 2,
6880 anon_sym_true,
6881 anon_sym_false,
6882 ACTIONS(49), 5,
6883 anon_sym_ann,
6884 anon_sym_bool,
6885 anon_sym_float,
6886 anon_sym_int,
6887 anon_sym_string,
6888 STATE(32), 16,
6889 sym_parenthesised_expression,
6890 sym_array_comprehension,
6891 sym_call,
6892 sym_generator_call,
6893 sym_if_then_else,
6894 sym_indexed_access,
6895 sym_infix_operator,
6896 sym_let_expression,
6897 sym_prefix_operator,
6898 sym_set_comprehension,
6899 sym_string_interpolation,
6900 sym__literal,
6901 sym_array_literal,
6902 sym_boolean_literal,
6903 sym_set_literal,
6904 sym_string_literal,
6905 [4617] = 17,
6906 ACTIONS(15), 1,
6907 anon_sym_LBRACE,
6908 ACTIONS(27), 1,
6909 anon_sym_LPAREN,
6910 ACTIONS(29), 1,
6911 anon_sym_LBRACK,
6912 ACTIONS(31), 1,
6913 anon_sym_if,
6914 ACTIONS(35), 1,
6915 anon_sym_let,
6916 ACTIONS(37), 1,
6917 anon_sym_not,
6918 ACTIONS(39), 1,
6919 anon_sym_DQUOTE,
6920 ACTIONS(55), 1,
6921 sym_integer_literal,
6922 ACTIONS(192), 1,
6923 sym_identifier,
6924 STATE(87), 1,
6925 sym__expression,
6926 STATE(193), 1,
6927 sym_primitive_type,
6928 ACTIONS(3), 2,
6929 sym_line_comment,
6930 sym_block_comment,
6931 ACTIONS(33), 2,
6932 anon_sym_DASH,
6933 anon_sym_,
6934 ACTIONS(51), 2,
6935 sym_absent,
6936 sym_float_literal,
6937 ACTIONS(53), 2,
6938 anon_sym_true,
6939 anon_sym_false,
6940 ACTIONS(49), 5,
6941 anon_sym_ann,
6942 anon_sym_bool,
6943 anon_sym_float,
6944 anon_sym_int,
6945 anon_sym_string,
6946 STATE(32), 16,
6947 sym_parenthesised_expression,
6948 sym_array_comprehension,
6949 sym_call,
6950 sym_generator_call,
6951 sym_if_then_else,
6952 sym_indexed_access,
6953 sym_infix_operator,
6954 sym_let_expression,
6955 sym_prefix_operator,
6956 sym_set_comprehension,
6957 sym_string_interpolation,
6958 sym__literal,
6959 sym_array_literal,
6960 sym_boolean_literal,
6961 sym_set_literal,
6962 sym_string_literal,
6963 [4692] = 17,
6964 ACTIONS(15), 1,
6965 anon_sym_LBRACE,
6966 ACTIONS(27), 1,
6967 anon_sym_LPAREN,
6968 ACTIONS(29), 1,
6969 anon_sym_LBRACK,
6970 ACTIONS(31), 1,
6971 anon_sym_if,
6972 ACTIONS(35), 1,
6973 anon_sym_let,
6974 ACTIONS(37), 1,
6975 anon_sym_not,
6976 ACTIONS(39), 1,
6977 anon_sym_DQUOTE,
6978 ACTIONS(55), 1,
6979 sym_integer_literal,
6980 ACTIONS(192), 1,
6981 sym_identifier,
6982 STATE(86), 1,
6983 sym__expression,
6984 STATE(194), 1,
6985 sym_primitive_type,
6986 ACTIONS(3), 2,
6987 sym_line_comment,
6988 sym_block_comment,
6989 ACTIONS(33), 2,
6990 anon_sym_DASH,
6991 anon_sym_,
6992 ACTIONS(51), 2,
6993 sym_absent,
6994 sym_float_literal,
6995 ACTIONS(53), 2,
6996 anon_sym_true,
6997 anon_sym_false,
6998 ACTIONS(49), 5,
6999 anon_sym_ann,
7000 anon_sym_bool,
7001 anon_sym_float,
7002 anon_sym_int,
7003 anon_sym_string,
7004 STATE(32), 16,
7005 sym_parenthesised_expression,
7006 sym_array_comprehension,
7007 sym_call,
7008 sym_generator_call,
7009 sym_if_then_else,
7010 sym_indexed_access,
7011 sym_infix_operator,
7012 sym_let_expression,
7013 sym_prefix_operator,
7014 sym_set_comprehension,
7015 sym_string_interpolation,
7016 sym__literal,
7017 sym_array_literal,
7018 sym_boolean_literal,
7019 sym_set_literal,
7020 sym_string_literal,
7021 [4767] = 17,
7022 ACTIONS(15), 1,
7023 anon_sym_LBRACE,
7024 ACTIONS(27), 1,
7025 anon_sym_LPAREN,
7026 ACTIONS(29), 1,
7027 anon_sym_LBRACK,
7028 ACTIONS(31), 1,
7029 anon_sym_if,
7030 ACTIONS(35), 1,
7031 anon_sym_let,
7032 ACTIONS(37), 1,
7033 anon_sym_not,
7034 ACTIONS(39), 1,
7035 anon_sym_DQUOTE,
7036 ACTIONS(55), 1,
7037 sym_integer_literal,
7038 ACTIONS(192), 1,
7039 sym_identifier,
7040 STATE(91), 1,
7041 sym__expression,
7042 STATE(210), 1,
7043 sym_primitive_type,
7044 ACTIONS(3), 2,
7045 sym_line_comment,
7046 sym_block_comment,
7047 ACTIONS(33), 2,
7048 anon_sym_DASH,
7049 anon_sym_,
7050 ACTIONS(51), 2,
7051 sym_absent,
7052 sym_float_literal,
7053 ACTIONS(53), 2,
7054 anon_sym_true,
7055 anon_sym_false,
7056 ACTIONS(49), 5,
7057 anon_sym_ann,
7058 anon_sym_bool,
7059 anon_sym_float,
7060 anon_sym_int,
7061 anon_sym_string,
7062 STATE(32), 16,
7063 sym_parenthesised_expression,
7064 sym_array_comprehension,
7065 sym_call,
7066 sym_generator_call,
7067 sym_if_then_else,
7068 sym_indexed_access,
7069 sym_infix_operator,
7070 sym_let_expression,
7071 sym_prefix_operator,
7072 sym_set_comprehension,
7073 sym_string_interpolation,
7074 sym__literal,
7075 sym_array_literal,
7076 sym_boolean_literal,
7077 sym_set_literal,
7078 sym_string_literal,
7079 [4842] = 17,
7080 ACTIONS(449), 1,
7081 sym_identifier,
7082 ACTIONS(452), 1,
7083 anon_sym_LBRACE,
7084 ACTIONS(457), 1,
7085 anon_sym_LPAREN,
7086 ACTIONS(460), 1,
7087 anon_sym_LBRACK,
7088 ACTIONS(463), 1,
7089 anon_sym_if,
7090 ACTIONS(469), 1,
7091 anon_sym_let,
7092 ACTIONS(472), 1,
7093 anon_sym_not,
7094 ACTIONS(475), 1,
7095 anon_sym_DQUOTE,
7096 ACTIONS(484), 1,
7097 sym_integer_literal,
7098 STATE(74), 1,
7099 aux_sym_call_repeat1,
7100 STATE(157), 1,
7101 sym__expression,
7102 ACTIONS(3), 2,
7103 sym_line_comment,
7104 sym_block_comment,
7105 ACTIONS(466), 2,
7106 anon_sym_DASH,
7107 anon_sym_,
7108 ACTIONS(478), 2,
7109 sym_absent,
7110 sym_float_literal,
7111 ACTIONS(481), 2,
7112 anon_sym_true,
7113 anon_sym_false,
7114 ACTIONS(455), 3,
7115 anon_sym_RBRACE,
7116 anon_sym_RPAREN,
7117 anon_sym_RBRACK,
7118 STATE(32), 16,
7119 sym_parenthesised_expression,
7120 sym_array_comprehension,
7121 sym_call,
7122 sym_generator_call,
7123 sym_if_then_else,
7124 sym_indexed_access,
7125 sym_infix_operator,
7126 sym_let_expression,
7127 sym_prefix_operator,
7128 sym_set_comprehension,
7129 sym_string_interpolation,
7130 sym__literal,
7131 sym_array_literal,
7132 sym_boolean_literal,
7133 sym_set_literal,
7134 sym_string_literal,
7135 [4915] = 21,
7136 ACTIONS(265), 1,
7137 anon_sym_LBRACK,
7138 ACTIONS(293), 1,
7139 anon_sym_COLON_COLON,
7140 ACTIONS(295), 1,
7141 anon_sym_union,
7142 ACTIONS(297), 1,
7143 anon_sym_diff,
7144 ACTIONS(299), 1,
7145 anon_sym_symdiff,
7146 ACTIONS(301), 1,
7147 anon_sym_intersect,
7148 ACTIONS(303), 1,
7149 anon_sym_DOT_DOT,
7150 ACTIONS(307), 1,
7151 anon_sym_PLUS_PLUS,
7152 ACTIONS(311), 1,
7153 anon_sym_SLASH,
7154 ACTIONS(313), 1,
7155 anon_sym_CARET,
7156 ACTIONS(319), 1,
7157 anon_sym_LT_DASH,
7158 ACTIONS(321), 1,
7159 anon_sym_SLASH_BSLASH,
7160 ACTIONS(489), 1,
7161 anon_sym_where,
7162 ACTIONS(3), 2,
7163 sym_line_comment,
7164 sym_block_comment,
7165 ACTIONS(305), 2,
7166 anon_sym_PLUS,
7167 anon_sym_DASH,
7168 ACTIONS(317), 2,
7169 anon_sym_DASH_GT,
7170 anon_sym_xor,
7171 ACTIONS(337), 2,
7172 anon_sym_LT_DASH_GT,
7173 anon_sym_BSLASH_SLASH,
7174 ACTIONS(309), 3,
7175 anon_sym_STAR,
7176 anon_sym_div,
7177 anon_sym_mod,
7178 ACTIONS(315), 4,
7179 anon_sym_EQ,
7180 anon_sym_in,
7181 anon_sym_LT,
7182 anon_sym_GT,
7183 ACTIONS(487), 4,
7184 anon_sym_COMMA,
7185 anon_sym_RBRACE,
7186 anon_sym_RPAREN,
7187 anon_sym_RBRACK,
7188 ACTIONS(323), 6,
7189 anon_sym_EQ_EQ,
7190 anon_sym_BANG_EQ,
7191 anon_sym_LT_EQ,
7192 anon_sym_GT_EQ,
7193 anon_sym_subset,
7194 anon_sym_superset,
7195 [4996] = 20,
7196 ACTIONS(265), 1,
7197 anon_sym_LBRACK,
7198 ACTIONS(293), 1,
7199 anon_sym_COLON_COLON,
7200 ACTIONS(295), 1,
7201 anon_sym_union,
7202 ACTIONS(297), 1,
7203 anon_sym_diff,
7204 ACTIONS(299), 1,
7205 anon_sym_symdiff,
7206 ACTIONS(301), 1,
7207 anon_sym_intersect,
7208 ACTIONS(303), 1,
7209 anon_sym_DOT_DOT,
7210 ACTIONS(307), 1,
7211 anon_sym_PLUS_PLUS,
7212 ACTIONS(311), 1,
7213 anon_sym_SLASH,
7214 ACTIONS(313), 1,
7215 anon_sym_CARET,
7216 ACTIONS(319), 1,
7217 anon_sym_LT_DASH,
7218 ACTIONS(321), 1,
7219 anon_sym_SLASH_BSLASH,
7220 ACTIONS(3), 2,
7221 sym_line_comment,
7222 sym_block_comment,
7223 ACTIONS(305), 2,
7224 anon_sym_PLUS,
7225 anon_sym_DASH,
7226 ACTIONS(317), 2,
7227 anon_sym_DASH_GT,
7228 anon_sym_xor,
7229 ACTIONS(337), 2,
7230 anon_sym_LT_DASH_GT,
7231 anon_sym_BSLASH_SLASH,
7232 ACTIONS(309), 3,
7233 anon_sym_STAR,
7234 anon_sym_div,
7235 anon_sym_mod,
7236 ACTIONS(315), 4,
7237 anon_sym_EQ,
7238 anon_sym_in,
7239 anon_sym_LT,
7240 anon_sym_GT,
7241 ACTIONS(491), 4,
7242 anon_sym_COMMA,
7243 anon_sym_RBRACE,
7244 anon_sym_RPAREN,
7245 anon_sym_RBRACK,
7246 ACTIONS(323), 6,
7247 anon_sym_EQ_EQ,
7248 anon_sym_BANG_EQ,
7249 anon_sym_LT_EQ,
7250 anon_sym_GT_EQ,
7251 anon_sym_subset,
7252 anon_sym_superset,
7253 [5074] = 21,
7254 ACTIONS(265), 1,
7255 anon_sym_LBRACK,
7256 ACTIONS(293), 1,
7257 anon_sym_COLON_COLON,
7258 ACTIONS(295), 1,
7259 anon_sym_union,
7260 ACTIONS(297), 1,
7261 anon_sym_diff,
7262 ACTIONS(299), 1,
7263 anon_sym_symdiff,
7264 ACTIONS(301), 1,
7265 anon_sym_intersect,
7266 ACTIONS(303), 1,
7267 anon_sym_DOT_DOT,
7268 ACTIONS(307), 1,
7269 anon_sym_PLUS_PLUS,
7270 ACTIONS(311), 1,
7271 anon_sym_SLASH,
7272 ACTIONS(313), 1,
7273 anon_sym_CARET,
7274 ACTIONS(319), 1,
7275 anon_sym_LT_DASH,
7276 ACTIONS(321), 1,
7277 anon_sym_SLASH_BSLASH,
7278 ACTIONS(493), 1,
7279 anon_sym_COLON,
7280 ACTIONS(3), 2,
7281 sym_line_comment,
7282 sym_block_comment,
7283 ACTIONS(305), 2,
7284 anon_sym_PLUS,
7285 anon_sym_DASH,
7286 ACTIONS(317), 2,
7287 anon_sym_DASH_GT,
7288 anon_sym_xor,
7289 ACTIONS(337), 2,
7290 anon_sym_LT_DASH_GT,
7291 anon_sym_BSLASH_SLASH,
7292 ACTIONS(309), 3,
7293 anon_sym_STAR,
7294 anon_sym_div,
7295 anon_sym_mod,
7296 ACTIONS(495), 3,
7297 anon_sym_COMMA,
7298 anon_sym_RPAREN,
7299 anon_sym_RBRACK,
7300 ACTIONS(315), 4,
7301 anon_sym_EQ,
7302 anon_sym_in,
7303 anon_sym_LT,
7304 anon_sym_GT,
7305 ACTIONS(323), 6,
7306 anon_sym_EQ_EQ,
7307 anon_sym_BANG_EQ,
7308 anon_sym_LT_EQ,
7309 anon_sym_GT_EQ,
7310 anon_sym_subset,
7311 anon_sym_superset,
7312 [5154] = 20,
7313 ACTIONS(265), 1,
7314 anon_sym_LBRACK,
7315 ACTIONS(293), 1,
7316 anon_sym_COLON_COLON,
7317 ACTIONS(295), 1,
7318 anon_sym_union,
7319 ACTIONS(297), 1,
7320 anon_sym_diff,
7321 ACTIONS(299), 1,
7322 anon_sym_symdiff,
7323 ACTIONS(301), 1,
7324 anon_sym_intersect,
7325 ACTIONS(303), 1,
7326 anon_sym_DOT_DOT,
7327 ACTIONS(307), 1,
7328 anon_sym_PLUS_PLUS,
7329 ACTIONS(311), 1,
7330 anon_sym_SLASH,
7331 ACTIONS(313), 1,
7332 anon_sym_CARET,
7333 ACTIONS(319), 1,
7334 anon_sym_LT_DASH,
7335 ACTIONS(321), 1,
7336 anon_sym_SLASH_BSLASH,
7337 ACTIONS(3), 2,
7338 sym_line_comment,
7339 sym_block_comment,
7340 ACTIONS(305), 2,
7341 anon_sym_PLUS,
7342 anon_sym_DASH,
7343 ACTIONS(317), 2,
7344 anon_sym_DASH_GT,
7345 anon_sym_xor,
7346 ACTIONS(337), 2,
7347 anon_sym_LT_DASH_GT,
7348 anon_sym_BSLASH_SLASH,
7349 ACTIONS(309), 3,
7350 anon_sym_STAR,
7351 anon_sym_div,
7352 anon_sym_mod,
7353 ACTIONS(315), 4,
7354 anon_sym_EQ,
7355 anon_sym_in,
7356 anon_sym_LT,
7357 anon_sym_GT,
7358 ACTIONS(497), 4,
7359 ts_builtin_sym_end,
7360 anon_sym_SEMI,
7361 anon_sym_COMMA,
7362 anon_sym_RBRACE,
7363 ACTIONS(323), 6,
7364 anon_sym_EQ_EQ,
7365 anon_sym_BANG_EQ,
7366 anon_sym_LT_EQ,
7367 anon_sym_GT_EQ,
7368 anon_sym_subset,
7369 anon_sym_superset,
7370 [5232] = 23,
7371 ACTIONS(265), 1,
7372 anon_sym_LBRACK,
7373 ACTIONS(293), 1,
7374 anon_sym_COLON_COLON,
7375 ACTIONS(295), 1,
7376 anon_sym_union,
7377 ACTIONS(297), 1,
7378 anon_sym_diff,
7379 ACTIONS(299), 1,
7380 anon_sym_symdiff,
7381 ACTIONS(301), 1,
7382 anon_sym_intersect,
7383 ACTIONS(303), 1,
7384 anon_sym_DOT_DOT,
7385 ACTIONS(307), 1,
7386 anon_sym_PLUS_PLUS,
7387 ACTIONS(311), 1,
7388 anon_sym_SLASH,
7389 ACTIONS(313), 1,
7390 anon_sym_CARET,
7391 ACTIONS(319), 1,
7392 anon_sym_LT_DASH,
7393 ACTIONS(321), 1,
7394 anon_sym_SLASH_BSLASH,
7395 ACTIONS(499), 1,
7396 anon_sym_elseif,
7397 ACTIONS(501), 1,
7398 anon_sym_else,
7399 ACTIONS(503), 1,
7400 anon_sym_endif,
7401 STATE(208), 1,
7402 aux_sym_if_then_else_repeat1,
7403 ACTIONS(3), 2,
7404 sym_line_comment,
7405 sym_block_comment,
7406 ACTIONS(305), 2,
7407 anon_sym_PLUS,
7408 anon_sym_DASH,
7409 ACTIONS(317), 2,
7410 anon_sym_DASH_GT,
7411 anon_sym_xor,
7412 ACTIONS(337), 2,
7413 anon_sym_LT_DASH_GT,
7414 anon_sym_BSLASH_SLASH,
7415 ACTIONS(309), 3,
7416 anon_sym_STAR,
7417 anon_sym_div,
7418 anon_sym_mod,
7419 ACTIONS(315), 4,
7420 anon_sym_EQ,
7421 anon_sym_in,
7422 anon_sym_LT,
7423 anon_sym_GT,
7424 ACTIONS(323), 6,
7425 anon_sym_EQ_EQ,
7426 anon_sym_BANG_EQ,
7427 anon_sym_LT_EQ,
7428 anon_sym_GT_EQ,
7429 anon_sym_subset,
7430 anon_sym_superset,
7431 [5316] = 21,
7432 ACTIONS(265), 1,
7433 anon_sym_LBRACK,
7434 ACTIONS(293), 1,
7435 anon_sym_COLON_COLON,
7436 ACTIONS(295), 1,
7437 anon_sym_union,
7438 ACTIONS(297), 1,
7439 anon_sym_diff,
7440 ACTIONS(299), 1,
7441 anon_sym_symdiff,
7442 ACTIONS(301), 1,
7443 anon_sym_intersect,
7444 ACTIONS(303), 1,
7445 anon_sym_DOT_DOT,
7446 ACTIONS(307), 1,
7447 anon_sym_PLUS_PLUS,
7448 ACTIONS(311), 1,
7449 anon_sym_SLASH,
7450 ACTIONS(313), 1,
7451 anon_sym_CARET,
7452 ACTIONS(319), 1,
7453 anon_sym_LT_DASH,
7454 ACTIONS(321), 1,
7455 anon_sym_SLASH_BSLASH,
7456 ACTIONS(505), 1,
7457 anon_sym_COLON,
7458 ACTIONS(3), 2,
7459 sym_line_comment,
7460 sym_block_comment,
7461 ACTIONS(305), 2,
7462 anon_sym_PLUS,
7463 anon_sym_DASH,
7464 ACTIONS(317), 2,
7465 anon_sym_DASH_GT,
7466 anon_sym_xor,
7467 ACTIONS(337), 2,
7468 anon_sym_LT_DASH_GT,
7469 anon_sym_BSLASH_SLASH,
7470 ACTIONS(309), 3,
7471 anon_sym_STAR,
7472 anon_sym_div,
7473 anon_sym_mod,
7474 ACTIONS(507), 3,
7475 anon_sym_COMMA,
7476 anon_sym_RPAREN,
7477 anon_sym_RBRACK,
7478 ACTIONS(315), 4,
7479 anon_sym_EQ,
7480 anon_sym_in,
7481 anon_sym_LT,
7482 anon_sym_GT,
7483 ACTIONS(323), 6,
7484 anon_sym_EQ_EQ,
7485 anon_sym_BANG_EQ,
7486 anon_sym_LT_EQ,
7487 anon_sym_GT_EQ,
7488 anon_sym_subset,
7489 anon_sym_superset,
7490 [5396] = 3,
7491 ACTIONS(3), 2,
7492 sym_line_comment,
7493 sym_block_comment,
7494 ACTIONS(57), 9,
7495 ts_builtin_sym_end,
7496 anon_sym_LBRACE,
7497 anon_sym_LPAREN,
7498 anon_sym_LBRACK,
7499 anon_sym_DASH,
7500 anon_sym_,
7501 anon_sym_DQUOTE,
7502 sym_absent,
7503 sym_float_literal,
7504 ACTIONS(509), 26,
7505 anon_sym_annotation,
7506 anon_sym_constraint,
7507 anon_sym_enum,
7508 anon_sym_function,
7509 anon_sym_solve,
7510 anon_sym_include,
7511 anon_sym_output,
7512 anon_sym_predicate,
7513 anon_sym_test,
7514 anon_sym_if,
7515 anon_sym_let,
7516 anon_sym_not,
7517 anon_sym_array,
7518 anon_sym_var,
7519 anon_sym_par,
7520 anon_sym_opt,
7521 anon_sym_set,
7522 anon_sym_ann,
7523 anon_sym_bool,
7524 anon_sym_float,
7525 anon_sym_int,
7526 anon_sym_string,
7527 anon_sym_true,
7528 anon_sym_false,
7529 sym_integer_literal,
7530 sym_identifier,
7531 [5440] = 20,
7532 ACTIONS(265), 1,
7533 anon_sym_LBRACK,
7534 ACTIONS(293), 1,
7535 anon_sym_COLON_COLON,
7536 ACTIONS(295), 1,
7537 anon_sym_union,
7538 ACTIONS(297), 1,
7539 anon_sym_diff,
7540 ACTIONS(299), 1,
7541 anon_sym_symdiff,
7542 ACTIONS(301), 1,
7543 anon_sym_intersect,
7544 ACTIONS(303), 1,
7545 anon_sym_DOT_DOT,
7546 ACTIONS(307), 1,
7547 anon_sym_PLUS_PLUS,
7548 ACTIONS(311), 1,
7549 anon_sym_SLASH,
7550 ACTIONS(313), 1,
7551 anon_sym_CARET,
7552 ACTIONS(319), 1,
7553 anon_sym_LT_DASH,
7554 ACTIONS(321), 1,
7555 anon_sym_SLASH_BSLASH,
7556 ACTIONS(3), 2,
7557 sym_line_comment,
7558 sym_block_comment,
7559 ACTIONS(305), 2,
7560 anon_sym_PLUS,
7561 anon_sym_DASH,
7562 ACTIONS(317), 2,
7563 anon_sym_DASH_GT,
7564 anon_sym_xor,
7565 ACTIONS(337), 2,
7566 anon_sym_LT_DASH_GT,
7567 anon_sym_BSLASH_SLASH,
7568 ACTIONS(309), 3,
7569 anon_sym_STAR,
7570 anon_sym_div,
7571 anon_sym_mod,
7572 ACTIONS(315), 4,
7573 anon_sym_EQ,
7574 anon_sym_in,
7575 anon_sym_LT,
7576 anon_sym_GT,
7577 ACTIONS(511), 4,
7578 ts_builtin_sym_end,
7579 anon_sym_SEMI,
7580 anon_sym_COMMA,
7581 anon_sym_RBRACE,
7582 ACTIONS(323), 6,
7583 anon_sym_EQ_EQ,
7584 anon_sym_BANG_EQ,
7585 anon_sym_LT_EQ,
7586 anon_sym_GT_EQ,
7587 anon_sym_subset,
7588 anon_sym_superset,
7589 [5518] = 21,
7590 ACTIONS(265), 1,
7591 anon_sym_LBRACK,
7592 ACTIONS(293), 1,
7593 anon_sym_COLON_COLON,
7594 ACTIONS(295), 1,
7595 anon_sym_union,
7596 ACTIONS(297), 1,
7597 anon_sym_diff,
7598 ACTIONS(299), 1,
7599 anon_sym_symdiff,
7600 ACTIONS(301), 1,
7601 anon_sym_intersect,
7602 ACTIONS(303), 1,
7603 anon_sym_DOT_DOT,
7604 ACTIONS(307), 1,
7605 anon_sym_PLUS_PLUS,
7606 ACTIONS(311), 1,
7607 anon_sym_SLASH,
7608 ACTIONS(313), 1,
7609 anon_sym_CARET,
7610 ACTIONS(319), 1,
7611 anon_sym_LT_DASH,
7612 ACTIONS(321), 1,
7613 anon_sym_SLASH_BSLASH,
7614 ACTIONS(513), 1,
7615 anon_sym_COLON,
7616 ACTIONS(3), 2,
7617 sym_line_comment,
7618 sym_block_comment,
7619 ACTIONS(305), 2,
7620 anon_sym_PLUS,
7621 anon_sym_DASH,
7622 ACTIONS(317), 2,
7623 anon_sym_DASH_GT,
7624 anon_sym_xor,
7625 ACTIONS(337), 2,
7626 anon_sym_LT_DASH_GT,
7627 anon_sym_BSLASH_SLASH,
7628 ACTIONS(309), 3,
7629 anon_sym_STAR,
7630 anon_sym_div,
7631 anon_sym_mod,
7632 ACTIONS(515), 3,
7633 anon_sym_COMMA,
7634 anon_sym_RPAREN,
7635 anon_sym_RBRACK,
7636 ACTIONS(315), 4,
7637 anon_sym_EQ,
7638 anon_sym_in,
7639 anon_sym_LT,
7640 anon_sym_GT,
7641 ACTIONS(323), 6,
7642 anon_sym_EQ_EQ,
7643 anon_sym_BANG_EQ,
7644 anon_sym_LT_EQ,
7645 anon_sym_GT_EQ,
7646 anon_sym_subset,
7647 anon_sym_superset,
7648 [5598] = 18,
7649 ACTIONS(15), 1,
7650 anon_sym_LBRACE,
7651 ACTIONS(27), 1,
7652 anon_sym_LPAREN,
7653 ACTIONS(29), 1,
7654 anon_sym_LBRACK,
7655 ACTIONS(31), 1,
7656 anon_sym_if,
7657 ACTIONS(35), 1,
7658 anon_sym_let,
7659 ACTIONS(37), 1,
7660 anon_sym_not,
7661 ACTIONS(39), 1,
7662 anon_sym_DQUOTE,
7663 ACTIONS(55), 1,
7664 sym_integer_literal,
7665 ACTIONS(517), 1,
7666 sym_identifier,
7667 ACTIONS(519), 1,
7668 anon_sym_RPAREN,
7669 STATE(96), 1,
7670 aux_sym_call_repeat1,
7671 STATE(107), 1,
7672 sym__expression,
7673 STATE(217), 1,
7674 sym_generator,
7675 ACTIONS(3), 2,
7676 sym_line_comment,
7677 sym_block_comment,
7678 ACTIONS(33), 2,
7679 anon_sym_DASH,
7680 anon_sym_,
7681 ACTIONS(51), 2,
7682 sym_absent,
7683 sym_float_literal,
7684 ACTIONS(53), 2,
7685 anon_sym_true,
7686 anon_sym_false,
7687 STATE(32), 16,
7688 sym_parenthesised_expression,
7689 sym_array_comprehension,
7690 sym_call,
7691 sym_generator_call,
7692 sym_if_then_else,
7693 sym_indexed_access,
7694 sym_infix_operator,
7695 sym_let_expression,
7696 sym_prefix_operator,
7697 sym_set_comprehension,
7698 sym_string_interpolation,
7699 sym__literal,
7700 sym_array_literal,
7701 sym_boolean_literal,
7702 sym_set_literal,
7703 sym_string_literal,
7704 [5672] = 20,
7705 ACTIONS(265), 1,
7706 anon_sym_LBRACK,
7707 ACTIONS(293), 1,
7708 anon_sym_COLON_COLON,
7709 ACTIONS(295), 1,
7710 anon_sym_union,
7711 ACTIONS(297), 1,
7712 anon_sym_diff,
7713 ACTIONS(299), 1,
7714 anon_sym_symdiff,
7715 ACTIONS(301), 1,
7716 anon_sym_intersect,
7717 ACTIONS(303), 1,
7718 anon_sym_DOT_DOT,
7719 ACTIONS(307), 1,
7720 anon_sym_PLUS_PLUS,
7721 ACTIONS(311), 1,
7722 anon_sym_SLASH,
7723 ACTIONS(313), 1,
7724 anon_sym_CARET,
7725 ACTIONS(319), 1,
7726 anon_sym_LT_DASH,
7727 ACTIONS(321), 1,
7728 anon_sym_SLASH_BSLASH,
7729 ACTIONS(3), 2,
7730 sym_line_comment,
7731 sym_block_comment,
7732 ACTIONS(305), 2,
7733 anon_sym_PLUS,
7734 anon_sym_DASH,
7735 ACTIONS(317), 2,
7736 anon_sym_DASH_GT,
7737 anon_sym_xor,
7738 ACTIONS(337), 2,
7739 anon_sym_LT_DASH_GT,
7740 anon_sym_BSLASH_SLASH,
7741 ACTIONS(309), 3,
7742 anon_sym_STAR,
7743 anon_sym_div,
7744 anon_sym_mod,
7745 ACTIONS(315), 4,
7746 anon_sym_EQ,
7747 anon_sym_in,
7748 anon_sym_LT,
7749 anon_sym_GT,
7750 ACTIONS(521), 4,
7751 ts_builtin_sym_end,
7752 anon_sym_SEMI,
7753 anon_sym_COMMA,
7754 anon_sym_RBRACE,
7755 ACTIONS(323), 6,
7756 anon_sym_EQ_EQ,
7757 anon_sym_BANG_EQ,
7758 anon_sym_LT_EQ,
7759 anon_sym_GT_EQ,
7760 anon_sym_subset,
7761 anon_sym_superset,
7762 [5750] = 21,
7763 ACTIONS(265), 1,
7764 anon_sym_LBRACK,
7765 ACTIONS(293), 1,
7766 anon_sym_COLON_COLON,
7767 ACTIONS(295), 1,
7768 anon_sym_union,
7769 ACTIONS(297), 1,
7770 anon_sym_diff,
7771 ACTIONS(299), 1,
7772 anon_sym_symdiff,
7773 ACTIONS(301), 1,
7774 anon_sym_intersect,
7775 ACTIONS(303), 1,
7776 anon_sym_DOT_DOT,
7777 ACTIONS(307), 1,
7778 anon_sym_PLUS_PLUS,
7779 ACTIONS(311), 1,
7780 anon_sym_SLASH,
7781 ACTIONS(313), 1,
7782 anon_sym_CARET,
7783 ACTIONS(319), 1,
7784 anon_sym_LT_DASH,
7785 ACTIONS(321), 1,
7786 anon_sym_SLASH_BSLASH,
7787 ACTIONS(523), 1,
7788 anon_sym_COLON,
7789 ACTIONS(3), 2,
7790 sym_line_comment,
7791 sym_block_comment,
7792 ACTIONS(305), 2,
7793 anon_sym_PLUS,
7794 anon_sym_DASH,
7795 ACTIONS(317), 2,
7796 anon_sym_DASH_GT,
7797 anon_sym_xor,
7798 ACTIONS(337), 2,
7799 anon_sym_LT_DASH_GT,
7800 anon_sym_BSLASH_SLASH,
7801 ACTIONS(309), 3,
7802 anon_sym_STAR,
7803 anon_sym_div,
7804 anon_sym_mod,
7805 ACTIONS(525), 3,
7806 anon_sym_COMMA,
7807 anon_sym_RPAREN,
7808 anon_sym_RBRACK,
7809 ACTIONS(315), 4,
7810 anon_sym_EQ,
7811 anon_sym_in,
7812 anon_sym_LT,
7813 anon_sym_GT,
7814 ACTIONS(323), 6,
7815 anon_sym_EQ_EQ,
7816 anon_sym_BANG_EQ,
7817 anon_sym_LT_EQ,
7818 anon_sym_GT_EQ,
7819 anon_sym_subset,
7820 anon_sym_superset,
7821 [5830] = 21,
7822 ACTIONS(265), 1,
7823 anon_sym_LBRACK,
7824 ACTIONS(293), 1,
7825 anon_sym_COLON_COLON,
7826 ACTIONS(295), 1,
7827 anon_sym_union,
7828 ACTIONS(297), 1,
7829 anon_sym_diff,
7830 ACTIONS(299), 1,
7831 anon_sym_symdiff,
7832 ACTIONS(301), 1,
7833 anon_sym_intersect,
7834 ACTIONS(303), 1,
7835 anon_sym_DOT_DOT,
7836 ACTIONS(307), 1,
7837 anon_sym_PLUS_PLUS,
7838 ACTIONS(311), 1,
7839 anon_sym_SLASH,
7840 ACTIONS(313), 1,
7841 anon_sym_CARET,
7842 ACTIONS(319), 1,
7843 anon_sym_LT_DASH,
7844 ACTIONS(321), 1,
7845 anon_sym_SLASH_BSLASH,
7846 ACTIONS(527), 1,
7847 anon_sym_COLON,
7848 ACTIONS(3), 2,
7849 sym_line_comment,
7850 sym_block_comment,
7851 ACTIONS(305), 2,
7852 anon_sym_PLUS,
7853 anon_sym_DASH,
7854 ACTIONS(317), 2,
7855 anon_sym_DASH_GT,
7856 anon_sym_xor,
7857 ACTIONS(337), 2,
7858 anon_sym_LT_DASH_GT,
7859 anon_sym_BSLASH_SLASH,
7860 ACTIONS(309), 3,
7861 anon_sym_STAR,
7862 anon_sym_div,
7863 anon_sym_mod,
7864 ACTIONS(529), 3,
7865 anon_sym_COMMA,
7866 anon_sym_RPAREN,
7867 anon_sym_RBRACK,
7868 ACTIONS(315), 4,
7869 anon_sym_EQ,
7870 anon_sym_in,
7871 anon_sym_LT,
7872 anon_sym_GT,
7873 ACTIONS(323), 6,
7874 anon_sym_EQ_EQ,
7875 anon_sym_BANG_EQ,
7876 anon_sym_LT_EQ,
7877 anon_sym_GT_EQ,
7878 anon_sym_subset,
7879 anon_sym_superset,
7880 [5910] = 21,
7881 ACTIONS(265), 1,
7882 anon_sym_LBRACK,
7883 ACTIONS(293), 1,
7884 anon_sym_COLON_COLON,
7885 ACTIONS(295), 1,
7886 anon_sym_union,
7887 ACTIONS(297), 1,
7888 anon_sym_diff,
7889 ACTIONS(299), 1,
7890 anon_sym_symdiff,
7891 ACTIONS(301), 1,
7892 anon_sym_intersect,
7893 ACTIONS(303), 1,
7894 anon_sym_DOT_DOT,
7895 ACTIONS(307), 1,
7896 anon_sym_PLUS_PLUS,
7897 ACTIONS(311), 1,
7898 anon_sym_SLASH,
7899 ACTIONS(313), 1,
7900 anon_sym_CARET,
7901 ACTIONS(319), 1,
7902 anon_sym_LT_DASH,
7903 ACTIONS(321), 1,
7904 anon_sym_SLASH_BSLASH,
7905 ACTIONS(531), 1,
7906 anon_sym_COLON,
7907 ACTIONS(3), 2,
7908 sym_line_comment,
7909 sym_block_comment,
7910 ACTIONS(305), 2,
7911 anon_sym_PLUS,
7912 anon_sym_DASH,
7913 ACTIONS(317), 2,
7914 anon_sym_DASH_GT,
7915 anon_sym_xor,
7916 ACTIONS(337), 2,
7917 anon_sym_LT_DASH_GT,
7918 anon_sym_BSLASH_SLASH,
7919 ACTIONS(309), 3,
7920 anon_sym_STAR,
7921 anon_sym_div,
7922 anon_sym_mod,
7923 ACTIONS(533), 3,
7924 anon_sym_COMMA,
7925 anon_sym_RPAREN,
7926 anon_sym_RBRACK,
7927 ACTIONS(315), 4,
7928 anon_sym_EQ,
7929 anon_sym_in,
7930 anon_sym_LT,
7931 anon_sym_GT,
7932 ACTIONS(323), 6,
7933 anon_sym_EQ_EQ,
7934 anon_sym_BANG_EQ,
7935 anon_sym_LT_EQ,
7936 anon_sym_GT_EQ,
7937 anon_sym_subset,
7938 anon_sym_superset,
7939 [5990] = 21,
7940 ACTIONS(265), 1,
7941 anon_sym_LBRACK,
7942 ACTIONS(293), 1,
7943 anon_sym_COLON_COLON,
7944 ACTIONS(295), 1,
7945 anon_sym_union,
7946 ACTIONS(297), 1,
7947 anon_sym_diff,
7948 ACTIONS(299), 1,
7949 anon_sym_symdiff,
7950 ACTIONS(301), 1,
7951 anon_sym_intersect,
7952 ACTIONS(303), 1,
7953 anon_sym_DOT_DOT,
7954 ACTIONS(307), 1,
7955 anon_sym_PLUS_PLUS,
7956 ACTIONS(311), 1,
7957 anon_sym_SLASH,
7958 ACTIONS(313), 1,
7959 anon_sym_CARET,
7960 ACTIONS(319), 1,
7961 anon_sym_LT_DASH,
7962 ACTIONS(321), 1,
7963 anon_sym_SLASH_BSLASH,
7964 ACTIONS(535), 1,
7965 anon_sym_COLON,
7966 ACTIONS(3), 2,
7967 sym_line_comment,
7968 sym_block_comment,
7969 ACTIONS(305), 2,
7970 anon_sym_PLUS,
7971 anon_sym_DASH,
7972 ACTIONS(317), 2,
7973 anon_sym_DASH_GT,
7974 anon_sym_xor,
7975 ACTIONS(337), 2,
7976 anon_sym_LT_DASH_GT,
7977 anon_sym_BSLASH_SLASH,
7978 ACTIONS(309), 3,
7979 anon_sym_STAR,
7980 anon_sym_div,
7981 anon_sym_mod,
7982 ACTIONS(537), 3,
7983 anon_sym_COMMA,
7984 anon_sym_RPAREN,
7985 anon_sym_RBRACK,
7986 ACTIONS(315), 4,
7987 anon_sym_EQ,
7988 anon_sym_in,
7989 anon_sym_LT,
7990 anon_sym_GT,
7991 ACTIONS(323), 6,
7992 anon_sym_EQ_EQ,
7993 anon_sym_BANG_EQ,
7994 anon_sym_LT_EQ,
7995 anon_sym_GT_EQ,
7996 anon_sym_subset,
7997 anon_sym_superset,
7998 [6070] = 20,
7999 ACTIONS(265), 1,
8000 anon_sym_LBRACK,
8001 ACTIONS(293), 1,
8002 anon_sym_COLON_COLON,
8003 ACTIONS(295), 1,
8004 anon_sym_union,
8005 ACTIONS(297), 1,
8006 anon_sym_diff,
8007 ACTIONS(299), 1,
8008 anon_sym_symdiff,
8009 ACTIONS(301), 1,
8010 anon_sym_intersect,
8011 ACTIONS(303), 1,
8012 anon_sym_DOT_DOT,
8013 ACTIONS(307), 1,
8014 anon_sym_PLUS_PLUS,
8015 ACTIONS(311), 1,
8016 anon_sym_SLASH,
8017 ACTIONS(313), 1,
8018 anon_sym_CARET,
8019 ACTIONS(319), 1,
8020 anon_sym_LT_DASH,
8021 ACTIONS(321), 1,
8022 anon_sym_SLASH_BSLASH,
8023 ACTIONS(3), 2,
8024 sym_line_comment,
8025 sym_block_comment,
8026 ACTIONS(305), 2,
8027 anon_sym_PLUS,
8028 anon_sym_DASH,
8029 ACTIONS(317), 2,
8030 anon_sym_DASH_GT,
8031 anon_sym_xor,
8032 ACTIONS(337), 2,
8033 anon_sym_LT_DASH_GT,
8034 anon_sym_BSLASH_SLASH,
8035 ACTIONS(309), 3,
8036 anon_sym_STAR,
8037 anon_sym_div,
8038 anon_sym_mod,
8039 ACTIONS(315), 4,
8040 anon_sym_EQ,
8041 anon_sym_in,
8042 anon_sym_LT,
8043 anon_sym_GT,
8044 ACTIONS(539), 4,
8045 ts_builtin_sym_end,
8046 anon_sym_SEMI,
8047 anon_sym_COMMA,
8048 anon_sym_RBRACE,
8049 ACTIONS(323), 6,
8050 anon_sym_EQ_EQ,
8051 anon_sym_BANG_EQ,
8052 anon_sym_LT_EQ,
8053 anon_sym_GT_EQ,
8054 anon_sym_subset,
8055 anon_sym_superset,
8056 [6148] = 21,
8057 ACTIONS(265), 1,
8058 anon_sym_LBRACK,
8059 ACTIONS(293), 1,
8060 anon_sym_COLON_COLON,
8061 ACTIONS(295), 1,
8062 anon_sym_union,
8063 ACTIONS(297), 1,
8064 anon_sym_diff,
8065 ACTIONS(299), 1,
8066 anon_sym_symdiff,
8067 ACTIONS(301), 1,
8068 anon_sym_intersect,
8069 ACTIONS(303), 1,
8070 anon_sym_DOT_DOT,
8071 ACTIONS(307), 1,
8072 anon_sym_PLUS_PLUS,
8073 ACTIONS(311), 1,
8074 anon_sym_SLASH,
8075 ACTIONS(313), 1,
8076 anon_sym_CARET,
8077 ACTIONS(319), 1,
8078 anon_sym_LT_DASH,
8079 ACTIONS(321), 1,
8080 anon_sym_SLASH_BSLASH,
8081 ACTIONS(541), 1,
8082 anon_sym_COLON,
8083 ACTIONS(3), 2,
8084 sym_line_comment,
8085 sym_block_comment,
8086 ACTIONS(305), 2,
8087 anon_sym_PLUS,
8088 anon_sym_DASH,
8089 ACTIONS(317), 2,
8090 anon_sym_DASH_GT,
8091 anon_sym_xor,
8092 ACTIONS(337), 2,
8093 anon_sym_LT_DASH_GT,
8094 anon_sym_BSLASH_SLASH,
8095 ACTIONS(309), 3,
8096 anon_sym_STAR,
8097 anon_sym_div,
8098 anon_sym_mod,
8099 ACTIONS(543), 3,
8100 anon_sym_COMMA,
8101 anon_sym_RPAREN,
8102 anon_sym_RBRACK,
8103 ACTIONS(315), 4,
8104 anon_sym_EQ,
8105 anon_sym_in,
8106 anon_sym_LT,
8107 anon_sym_GT,
8108 ACTIONS(323), 6,
8109 anon_sym_EQ_EQ,
8110 anon_sym_BANG_EQ,
8111 anon_sym_LT_EQ,
8112 anon_sym_GT_EQ,
8113 anon_sym_subset,
8114 anon_sym_superset,
8115 [6228] = 22,
8116 ACTIONS(265), 1,
8117 anon_sym_LBRACK,
8118 ACTIONS(293), 1,
8119 anon_sym_COLON_COLON,
8120 ACTIONS(295), 1,
8121 anon_sym_union,
8122 ACTIONS(297), 1,
8123 anon_sym_diff,
8124 ACTIONS(299), 1,
8125 anon_sym_symdiff,
8126 ACTIONS(301), 1,
8127 anon_sym_intersect,
8128 ACTIONS(303), 1,
8129 anon_sym_DOT_DOT,
8130 ACTIONS(307), 1,
8131 anon_sym_PLUS_PLUS,
8132 ACTIONS(311), 1,
8133 anon_sym_SLASH,
8134 ACTIONS(313), 1,
8135 anon_sym_CARET,
8136 ACTIONS(319), 1,
8137 anon_sym_LT_DASH,
8138 ACTIONS(321), 1,
8139 anon_sym_SLASH_BSLASH,
8140 ACTIONS(545), 1,
8141 anon_sym_COMMA,
8142 ACTIONS(547), 1,
8143 anon_sym_RBRACE,
8144 ACTIONS(549), 1,
8145 anon_sym_PIPE,
8146 ACTIONS(3), 2,
8147 sym_line_comment,
8148 sym_block_comment,
8149 ACTIONS(305), 2,
8150 anon_sym_PLUS,
8151 anon_sym_DASH,
8152 ACTIONS(317), 2,
8153 anon_sym_DASH_GT,
8154 anon_sym_xor,
8155 ACTIONS(337), 2,
8156 anon_sym_LT_DASH_GT,
8157 anon_sym_BSLASH_SLASH,
8158 ACTIONS(309), 3,
8159 anon_sym_STAR,
8160 anon_sym_div,
8161 anon_sym_mod,
8162 ACTIONS(315), 4,
8163 anon_sym_EQ,
8164 anon_sym_in,
8165 anon_sym_LT,
8166 anon_sym_GT,
8167 ACTIONS(323), 6,
8168 anon_sym_EQ_EQ,
8169 anon_sym_BANG_EQ,
8170 anon_sym_LT_EQ,
8171 anon_sym_GT_EQ,
8172 anon_sym_subset,
8173 anon_sym_superset,
8174 [6309] = 17,
8175 ACTIONS(15), 1,
8176 anon_sym_LBRACE,
8177 ACTIONS(27), 1,
8178 anon_sym_LPAREN,
8179 ACTIONS(29), 1,
8180 anon_sym_LBRACK,
8181 ACTIONS(31), 1,
8182 anon_sym_if,
8183 ACTIONS(35), 1,
8184 anon_sym_let,
8185 ACTIONS(37), 1,
8186 anon_sym_not,
8187 ACTIONS(39), 1,
8188 anon_sym_DQUOTE,
8189 ACTIONS(55), 1,
8190 sym_integer_literal,
8191 ACTIONS(192), 1,
8192 sym_identifier,
8193 ACTIONS(551), 1,
8194 anon_sym_RBRACK,
8195 STATE(98), 1,
8196 sym__expression,
8197 STATE(100), 1,
8198 aux_sym_call_repeat1,
8199 ACTIONS(3), 2,
8200 sym_line_comment,
8201 sym_block_comment,
8202 ACTIONS(33), 2,
8203 anon_sym_DASH,
8204 anon_sym_,
8205 ACTIONS(51), 2,
8206 sym_absent,
8207 sym_float_literal,
8208 ACTIONS(53), 2,
8209 anon_sym_true,
8210 anon_sym_false,
8211 STATE(32), 16,
8212 sym_parenthesised_expression,
8213 sym_array_comprehension,
8214 sym_call,
8215 sym_generator_call,
8216 sym_if_then_else,
8217 sym_indexed_access,
8218 sym_infix_operator,
8219 sym_let_expression,
8220 sym_prefix_operator,
8221 sym_set_comprehension,
8222 sym_string_interpolation,
8223 sym__literal,
8224 sym_array_literal,
8225 sym_boolean_literal,
8226 sym_set_literal,
8227 sym_string_literal,
8228 [6380] = 17,
8229 ACTIONS(15), 1,
8230 anon_sym_LBRACE,
8231 ACTIONS(27), 1,
8232 anon_sym_LPAREN,
8233 ACTIONS(29), 1,
8234 anon_sym_LBRACK,
8235 ACTIONS(31), 1,
8236 anon_sym_if,
8237 ACTIONS(35), 1,
8238 anon_sym_let,
8239 ACTIONS(37), 1,
8240 anon_sym_not,
8241 ACTIONS(39), 1,
8242 anon_sym_DQUOTE,
8243 ACTIONS(55), 1,
8244 sym_integer_literal,
8245 ACTIONS(192), 1,
8246 sym_identifier,
8247 ACTIONS(547), 1,
8248 anon_sym_RBRACE,
8249 STATE(74), 1,
8250 aux_sym_call_repeat1,
8251 STATE(103), 1,
8252 sym__expression,
8253 ACTIONS(3), 2,
8254 sym_line_comment,
8255 sym_block_comment,
8256 ACTIONS(33), 2,
8257 anon_sym_DASH,
8258 anon_sym_,
8259 ACTIONS(51), 2,
8260 sym_absent,
8261 sym_float_literal,
8262 ACTIONS(53), 2,
8263 anon_sym_true,
8264 anon_sym_false,
8265 STATE(32), 16,
8266 sym_parenthesised_expression,
8267 sym_array_comprehension,
8268 sym_call,
8269 sym_generator_call,
8270 sym_if_then_else,
8271 sym_indexed_access,
8272 sym_infix_operator,
8273 sym_let_expression,
8274 sym_prefix_operator,
8275 sym_set_comprehension,
8276 sym_string_interpolation,
8277 sym__literal,
8278 sym_array_literal,
8279 sym_boolean_literal,
8280 sym_set_literal,
8281 sym_string_literal,
8282 [6451] = 17,
8283 ACTIONS(15), 1,
8284 anon_sym_LBRACE,
8285 ACTIONS(27), 1,
8286 anon_sym_LPAREN,
8287 ACTIONS(29), 1,
8288 anon_sym_LBRACK,
8289 ACTIONS(31), 1,
8290 anon_sym_if,
8291 ACTIONS(35), 1,
8292 anon_sym_let,
8293 ACTIONS(37), 1,
8294 anon_sym_not,
8295 ACTIONS(39), 1,
8296 anon_sym_DQUOTE,
8297 ACTIONS(55), 1,
8298 sym_integer_literal,
8299 ACTIONS(192), 1,
8300 sym_identifier,
8301 ACTIONS(553), 1,
8302 anon_sym_RBRACE,
8303 STATE(92), 1,
8304 sym__expression,
8305 STATE(94), 1,
8306 aux_sym_call_repeat1,
8307 ACTIONS(3), 2,
8308 sym_line_comment,
8309 sym_block_comment,
8310 ACTIONS(33), 2,
8311 anon_sym_DASH,
8312 anon_sym_,
8313 ACTIONS(51), 2,
8314 sym_absent,
8315 sym_float_literal,
8316 ACTIONS(53), 2,
8317 anon_sym_true,
8318 anon_sym_false,
8319 STATE(32), 16,
8320 sym_parenthesised_expression,
8321 sym_array_comprehension,
8322 sym_call,
8323 sym_generator_call,
8324 sym_if_then_else,
8325 sym_indexed_access,
8326 sym_infix_operator,
8327 sym_let_expression,
8328 sym_prefix_operator,
8329 sym_set_comprehension,
8330 sym_string_interpolation,
8331 sym__literal,
8332 sym_array_literal,
8333 sym_boolean_literal,
8334 sym_set_literal,
8335 sym_string_literal,
8336 [6522] = 17,
8337 ACTIONS(15), 1,
8338 anon_sym_LBRACE,
8339 ACTIONS(27), 1,
8340 anon_sym_LPAREN,
8341 ACTIONS(29), 1,
8342 anon_sym_LBRACK,
8343 ACTIONS(31), 1,
8344 anon_sym_if,
8345 ACTIONS(35), 1,
8346 anon_sym_let,
8347 ACTIONS(37), 1,
8348 anon_sym_not,
8349 ACTIONS(39), 1,
8350 anon_sym_DQUOTE,
8351 ACTIONS(55), 1,
8352 sym_integer_literal,
8353 ACTIONS(192), 1,
8354 sym_identifier,
8355 ACTIONS(555), 1,
8356 anon_sym_RPAREN,
8357 STATE(74), 1,
8358 aux_sym_call_repeat1,
8359 STATE(114), 1,
8360 sym__expression,
8361 ACTIONS(3), 2,
8362 sym_line_comment,
8363 sym_block_comment,
8364 ACTIONS(33), 2,
8365 anon_sym_DASH,
8366 anon_sym_,
8367 ACTIONS(51), 2,
8368 sym_absent,
8369 sym_float_literal,
8370 ACTIONS(53), 2,
8371 anon_sym_true,
8372 anon_sym_false,
8373 STATE(32), 16,
8374 sym_parenthesised_expression,
8375 sym_array_comprehension,
8376 sym_call,
8377 sym_generator_call,
8378 sym_if_then_else,
8379 sym_indexed_access,
8380 sym_infix_operator,
8381 sym_let_expression,
8382 sym_prefix_operator,
8383 sym_set_comprehension,
8384 sym_string_interpolation,
8385 sym__literal,
8386 sym_array_literal,
8387 sym_boolean_literal,
8388 sym_set_literal,
8389 sym_string_literal,
8390 [6593] = 21,
8391 ACTIONS(265), 1,
8392 anon_sym_LBRACK,
8393 ACTIONS(293), 1,
8394 anon_sym_COLON_COLON,
8395 ACTIONS(295), 1,
8396 anon_sym_union,
8397 ACTIONS(297), 1,
8398 anon_sym_diff,
8399 ACTIONS(299), 1,
8400 anon_sym_symdiff,
8401 ACTIONS(301), 1,
8402 anon_sym_intersect,
8403 ACTIONS(303), 1,
8404 anon_sym_DOT_DOT,
8405 ACTIONS(307), 1,
8406 anon_sym_PLUS_PLUS,
8407 ACTIONS(311), 1,
8408 anon_sym_SLASH,
8409 ACTIONS(313), 1,
8410 anon_sym_CARET,
8411 ACTIONS(319), 1,
8412 anon_sym_LT_DASH,
8413 ACTIONS(321), 1,
8414 anon_sym_SLASH_BSLASH,
8415 ACTIONS(559), 1,
8416 anon_sym_else,
8417 ACTIONS(3), 2,
8418 sym_line_comment,
8419 sym_block_comment,
8420 ACTIONS(305), 2,
8421 anon_sym_PLUS,
8422 anon_sym_DASH,
8423 ACTIONS(317), 2,
8424 anon_sym_DASH_GT,
8425 anon_sym_xor,
8426 ACTIONS(337), 2,
8427 anon_sym_LT_DASH_GT,
8428 anon_sym_BSLASH_SLASH,
8429 ACTIONS(557), 2,
8430 anon_sym_elseif,
8431 anon_sym_endif,
8432 ACTIONS(309), 3,
8433 anon_sym_STAR,
8434 anon_sym_div,
8435 anon_sym_mod,
8436 ACTIONS(315), 4,
8437 anon_sym_EQ,
8438 anon_sym_in,
8439 anon_sym_LT,
8440 anon_sym_GT,
8441 ACTIONS(323), 6,
8442 anon_sym_EQ_EQ,
8443 anon_sym_BANG_EQ,
8444 anon_sym_LT_EQ,
8445 anon_sym_GT_EQ,
8446 anon_sym_subset,
8447 anon_sym_superset,
8448 [6672] = 22,
8449 ACTIONS(265), 1,
8450 anon_sym_LBRACK,
8451 ACTIONS(293), 1,
8452 anon_sym_COLON_COLON,
8453 ACTIONS(295), 1,
8454 anon_sym_union,
8455 ACTIONS(297), 1,
8456 anon_sym_diff,
8457 ACTIONS(299), 1,
8458 anon_sym_symdiff,
8459 ACTIONS(301), 1,
8460 anon_sym_intersect,
8461 ACTIONS(303), 1,
8462 anon_sym_DOT_DOT,
8463 ACTIONS(307), 1,
8464 anon_sym_PLUS_PLUS,
8465 ACTIONS(311), 1,
8466 anon_sym_SLASH,
8467 ACTIONS(313), 1,
8468 anon_sym_CARET,
8469 ACTIONS(319), 1,
8470 anon_sym_LT_DASH,
8471 ACTIONS(321), 1,
8472 anon_sym_SLASH_BSLASH,
8473 ACTIONS(545), 1,
8474 anon_sym_COMMA,
8475 ACTIONS(561), 1,
8476 anon_sym_PIPE,
8477 ACTIONS(563), 1,
8478 anon_sym_RBRACK,
8479 ACTIONS(3), 2,
8480 sym_line_comment,
8481 sym_block_comment,
8482 ACTIONS(305), 2,
8483 anon_sym_PLUS,
8484 anon_sym_DASH,
8485 ACTIONS(317), 2,
8486 anon_sym_DASH_GT,
8487 anon_sym_xor,
8488 ACTIONS(337), 2,
8489 anon_sym_LT_DASH_GT,
8490 anon_sym_BSLASH_SLASH,
8491 ACTIONS(309), 3,
8492 anon_sym_STAR,
8493 anon_sym_div,
8494 anon_sym_mod,
8495 ACTIONS(315), 4,
8496 anon_sym_EQ,
8497 anon_sym_in,
8498 anon_sym_LT,
8499 anon_sym_GT,
8500 ACTIONS(323), 6,
8501 anon_sym_EQ_EQ,
8502 anon_sym_BANG_EQ,
8503 anon_sym_LT_EQ,
8504 anon_sym_GT_EQ,
8505 anon_sym_subset,
8506 anon_sym_superset,
8507 [6753] = 22,
8508 ACTIONS(265), 1,
8509 anon_sym_LBRACK,
8510 ACTIONS(293), 1,
8511 anon_sym_COLON_COLON,
8512 ACTIONS(295), 1,
8513 anon_sym_union,
8514 ACTIONS(297), 1,
8515 anon_sym_diff,
8516 ACTIONS(299), 1,
8517 anon_sym_symdiff,
8518 ACTIONS(301), 1,
8519 anon_sym_intersect,
8520 ACTIONS(303), 1,
8521 anon_sym_DOT_DOT,
8522 ACTIONS(307), 1,
8523 anon_sym_PLUS_PLUS,
8524 ACTIONS(311), 1,
8525 anon_sym_SLASH,
8526 ACTIONS(313), 1,
8527 anon_sym_CARET,
8528 ACTIONS(319), 1,
8529 anon_sym_LT_DASH,
8530 ACTIONS(321), 1,
8531 anon_sym_SLASH_BSLASH,
8532 ACTIONS(565), 1,
8533 anon_sym_COMMA,
8534 ACTIONS(567), 1,
8535 anon_sym_RBRACK,
8536 STATE(219), 1,
8537 aux_sym_indexed_access_repeat1,
8538 ACTIONS(3), 2,
8539 sym_line_comment,
8540 sym_block_comment,
8541 ACTIONS(305), 2,
8542 anon_sym_PLUS,
8543 anon_sym_DASH,
8544 ACTIONS(317), 2,
8545 anon_sym_DASH_GT,
8546 anon_sym_xor,
8547 ACTIONS(337), 2,
8548 anon_sym_LT_DASH_GT,
8549 anon_sym_BSLASH_SLASH,
8550 ACTIONS(309), 3,
8551 anon_sym_STAR,
8552 anon_sym_div,
8553 anon_sym_mod,
8554 ACTIONS(315), 4,
8555 anon_sym_EQ,
8556 anon_sym_in,
8557 anon_sym_LT,
8558 anon_sym_GT,
8559 ACTIONS(323), 6,
8560 anon_sym_EQ_EQ,
8561 anon_sym_BANG_EQ,
8562 anon_sym_LT_EQ,
8563 anon_sym_GT_EQ,
8564 anon_sym_subset,
8565 anon_sym_superset,
8566 [6834] = 17,
8567 ACTIONS(15), 1,
8568 anon_sym_LBRACE,
8569 ACTIONS(27), 1,
8570 anon_sym_LPAREN,
8571 ACTIONS(29), 1,
8572 anon_sym_LBRACK,
8573 ACTIONS(31), 1,
8574 anon_sym_if,
8575 ACTIONS(35), 1,
8576 anon_sym_let,
8577 ACTIONS(37), 1,
8578 anon_sym_not,
8579 ACTIONS(39), 1,
8580 anon_sym_DQUOTE,
8581 ACTIONS(55), 1,
8582 sym_integer_literal,
8583 ACTIONS(192), 1,
8584 sym_identifier,
8585 ACTIONS(563), 1,
8586 anon_sym_RBRACK,
8587 STATE(74), 1,
8588 aux_sym_call_repeat1,
8589 STATE(104), 1,
8590 sym__expression,
8591 ACTIONS(3), 2,
8592 sym_line_comment,
8593 sym_block_comment,
8594 ACTIONS(33), 2,
8595 anon_sym_DASH,
8596 anon_sym_,
8597 ACTIONS(51), 2,
8598 sym_absent,
8599 sym_float_literal,
8600 ACTIONS(53), 2,
8601 anon_sym_true,
8602 anon_sym_false,
8603 STATE(32), 16,
8604 sym_parenthesised_expression,
8605 sym_array_comprehension,
8606 sym_call,
8607 sym_generator_call,
8608 sym_if_then_else,
8609 sym_indexed_access,
8610 sym_infix_operator,
8611 sym_let_expression,
8612 sym_prefix_operator,
8613 sym_set_comprehension,
8614 sym_string_interpolation,
8615 sym__literal,
8616 sym_array_literal,
8617 sym_boolean_literal,
8618 sym_set_literal,
8619 sym_string_literal,
8620 [6905] = 5,
8621 ACTIONS(259), 1,
8622 anon_sym_LPAREN,
8623 ACTIONS(569), 1,
8624 anon_sym_in,
8625 ACTIONS(3), 2,
8626 sym_line_comment,
8627 sym_block_comment,
8628 ACTIONS(257), 7,
8629 anon_sym_EQ,
8630 anon_sym_LT_DASH,
8631 anon_sym_LT,
8632 anon_sym_GT,
8633 anon_sym_PLUS,
8634 anon_sym_DASH,
8635 anon_sym_SLASH,
8636 ACTIONS(255), 25,
8637 anon_sym_COMMA,
8638 anon_sym_COLON_COLON,
8639 anon_sym_RPAREN,
8640 anon_sym_LBRACK,
8641 anon_sym_LT_DASH_GT,
8642 anon_sym_DASH_GT,
8643 anon_sym_BSLASH_SLASH,
8644 anon_sym_xor,
8645 anon_sym_SLASH_BSLASH,
8646 anon_sym_EQ_EQ,
8647 anon_sym_BANG_EQ,
8648 anon_sym_LT_EQ,
8649 anon_sym_GT_EQ,
8650 anon_sym_subset,
8651 anon_sym_superset,
8652 anon_sym_union,
8653 anon_sym_diff,
8654 anon_sym_symdiff,
8655 anon_sym_intersect,
8656 anon_sym_DOT_DOT,
8657 anon_sym_PLUS_PLUS,
8658 anon_sym_STAR,
8659 anon_sym_div,
8660 anon_sym_mod,
8661 anon_sym_CARET,
8662 [6952] = 20,
8663 ACTIONS(265), 1,
8664 anon_sym_LBRACK,
8665 ACTIONS(293), 1,
8666 anon_sym_COLON_COLON,
8667 ACTIONS(295), 1,
8668 anon_sym_union,
8669 ACTIONS(297), 1,
8670 anon_sym_diff,
8671 ACTIONS(299), 1,
8672 anon_sym_symdiff,
8673 ACTIONS(301), 1,
8674 anon_sym_intersect,
8675 ACTIONS(303), 1,
8676 anon_sym_DOT_DOT,
8677 ACTIONS(307), 1,
8678 anon_sym_PLUS_PLUS,
8679 ACTIONS(311), 1,
8680 anon_sym_SLASH,
8681 ACTIONS(313), 1,
8682 anon_sym_CARET,
8683 ACTIONS(319), 1,
8684 anon_sym_LT_DASH,
8685 ACTIONS(321), 1,
8686 anon_sym_SLASH_BSLASH,
8687 ACTIONS(3), 2,
8688 sym_line_comment,
8689 sym_block_comment,
8690 ACTIONS(305), 2,
8691 anon_sym_PLUS,
8692 anon_sym_DASH,
8693 ACTIONS(317), 2,
8694 anon_sym_DASH_GT,
8695 anon_sym_xor,
8696 ACTIONS(337), 2,
8697 anon_sym_LT_DASH_GT,
8698 anon_sym_BSLASH_SLASH,
8699 ACTIONS(572), 2,
8700 ts_builtin_sym_end,
8701 anon_sym_SEMI,
8702 ACTIONS(309), 3,
8703 anon_sym_STAR,
8704 anon_sym_div,
8705 anon_sym_mod,
8706 ACTIONS(315), 4,
8707 anon_sym_EQ,
8708 anon_sym_in,
8709 anon_sym_LT,
8710 anon_sym_GT,
8711 ACTIONS(323), 6,
8712 anon_sym_EQ_EQ,
8713 anon_sym_BANG_EQ,
8714 anon_sym_LT_EQ,
8715 anon_sym_GT_EQ,
8716 anon_sym_subset,
8717 anon_sym_superset,
8718 [7028] = 21,
8719 ACTIONS(265), 1,
8720 anon_sym_LBRACK,
8721 ACTIONS(293), 1,
8722 anon_sym_COLON_COLON,
8723 ACTIONS(295), 1,
8724 anon_sym_union,
8725 ACTIONS(297), 1,
8726 anon_sym_diff,
8727 ACTIONS(299), 1,
8728 anon_sym_symdiff,
8729 ACTIONS(301), 1,
8730 anon_sym_intersect,
8731 ACTIONS(303), 1,
8732 anon_sym_DOT_DOT,
8733 ACTIONS(307), 1,
8734 anon_sym_PLUS_PLUS,
8735 ACTIONS(311), 1,
8736 anon_sym_SLASH,
8737 ACTIONS(313), 1,
8738 anon_sym_CARET,
8739 ACTIONS(319), 1,
8740 anon_sym_LT_DASH,
8741 ACTIONS(321), 1,
8742 anon_sym_SLASH_BSLASH,
8743 ACTIONS(545), 1,
8744 anon_sym_COMMA,
8745 ACTIONS(574), 1,
8746 anon_sym_RBRACE,
8747 ACTIONS(3), 2,
8748 sym_line_comment,
8749 sym_block_comment,
8750 ACTIONS(305), 2,
8751 anon_sym_PLUS,
8752 anon_sym_DASH,
8753 ACTIONS(317), 2,
8754 anon_sym_DASH_GT,
8755 anon_sym_xor,
8756 ACTIONS(337), 2,
8757 anon_sym_LT_DASH_GT,
8758 anon_sym_BSLASH_SLASH,
8759 ACTIONS(309), 3,
8760 anon_sym_STAR,
8761 anon_sym_div,
8762 anon_sym_mod,
8763 ACTIONS(315), 4,
8764 anon_sym_EQ,
8765 anon_sym_in,
8766 anon_sym_LT,
8767 anon_sym_GT,
8768 ACTIONS(323), 6,
8769 anon_sym_EQ_EQ,
8770 anon_sym_BANG_EQ,
8771 anon_sym_LT_EQ,
8772 anon_sym_GT_EQ,
8773 anon_sym_subset,
8774 anon_sym_superset,
8775 [7106] = 21,
8776 ACTIONS(265), 1,
8777 anon_sym_LBRACK,
8778 ACTIONS(293), 1,
8779 anon_sym_COLON_COLON,
8780 ACTIONS(295), 1,
8781 anon_sym_union,
8782 ACTIONS(297), 1,
8783 anon_sym_diff,
8784 ACTIONS(299), 1,
8785 anon_sym_symdiff,
8786 ACTIONS(301), 1,
8787 anon_sym_intersect,
8788 ACTIONS(303), 1,
8789 anon_sym_DOT_DOT,
8790 ACTIONS(307), 1,
8791 anon_sym_PLUS_PLUS,
8792 ACTIONS(311), 1,
8793 anon_sym_SLASH,
8794 ACTIONS(313), 1,
8795 anon_sym_CARET,
8796 ACTIONS(319), 1,
8797 anon_sym_LT_DASH,
8798 ACTIONS(321), 1,
8799 anon_sym_SLASH_BSLASH,
8800 ACTIONS(545), 1,
8801 anon_sym_COMMA,
8802 ACTIONS(576), 1,
8803 anon_sym_RBRACK,
8804 ACTIONS(3), 2,
8805 sym_line_comment,
8806 sym_block_comment,
8807 ACTIONS(305), 2,
8808 anon_sym_PLUS,
8809 anon_sym_DASH,
8810 ACTIONS(317), 2,
8811 anon_sym_DASH_GT,
8812 anon_sym_xor,
8813 ACTIONS(337), 2,
8814 anon_sym_LT_DASH_GT,
8815 anon_sym_BSLASH_SLASH,
8816 ACTIONS(309), 3,
8817 anon_sym_STAR,
8818 anon_sym_div,
8819 anon_sym_mod,
8820 ACTIONS(315), 4,
8821 anon_sym_EQ,
8822 anon_sym_in,
8823 anon_sym_LT,
8824 anon_sym_GT,
8825 ACTIONS(323), 6,
8826 anon_sym_EQ_EQ,
8827 anon_sym_BANG_EQ,
8828 anon_sym_LT_EQ,
8829 anon_sym_GT_EQ,
8830 anon_sym_subset,
8831 anon_sym_superset,
8832 [7184] = 20,
8833 ACTIONS(265), 1,
8834 anon_sym_LBRACK,
8835 ACTIONS(293), 1,
8836 anon_sym_COLON_COLON,
8837 ACTIONS(295), 1,
8838 anon_sym_union,
8839 ACTIONS(297), 1,
8840 anon_sym_diff,
8841 ACTIONS(299), 1,
8842 anon_sym_symdiff,
8843 ACTIONS(301), 1,
8844 anon_sym_intersect,
8845 ACTIONS(303), 1,
8846 anon_sym_DOT_DOT,
8847 ACTIONS(307), 1,
8848 anon_sym_PLUS_PLUS,
8849 ACTIONS(311), 1,
8850 anon_sym_SLASH,
8851 ACTIONS(313), 1,
8852 anon_sym_CARET,
8853 ACTIONS(319), 1,
8854 anon_sym_LT_DASH,
8855 ACTIONS(321), 1,
8856 anon_sym_SLASH_BSLASH,
8857 ACTIONS(3), 2,
8858 sym_line_comment,
8859 sym_block_comment,
8860 ACTIONS(305), 2,
8861 anon_sym_PLUS,
8862 anon_sym_DASH,
8863 ACTIONS(317), 2,
8864 anon_sym_DASH_GT,
8865 anon_sym_xor,
8866 ACTIONS(337), 2,
8867 anon_sym_LT_DASH_GT,
8868 anon_sym_BSLASH_SLASH,
8869 ACTIONS(578), 2,
8870 anon_sym_COMMA,
8871 anon_sym_RBRACK,
8872 ACTIONS(309), 3,
8873 anon_sym_STAR,
8874 anon_sym_div,
8875 anon_sym_mod,
8876 ACTIONS(315), 4,
8877 anon_sym_EQ,
8878 anon_sym_in,
8879 anon_sym_LT,
8880 anon_sym_GT,
8881 ACTIONS(323), 6,
8882 anon_sym_EQ_EQ,
8883 anon_sym_BANG_EQ,
8884 anon_sym_LT_EQ,
8885 anon_sym_GT_EQ,
8886 anon_sym_subset,
8887 anon_sym_superset,
8888 [7260] = 20,
8889 ACTIONS(265), 1,
8890 anon_sym_LBRACK,
8891 ACTIONS(293), 1,
8892 anon_sym_COLON_COLON,
8893 ACTIONS(295), 1,
8894 anon_sym_union,
8895 ACTIONS(297), 1,
8896 anon_sym_diff,
8897 ACTIONS(299), 1,
8898 anon_sym_symdiff,
8899 ACTIONS(301), 1,
8900 anon_sym_intersect,
8901 ACTIONS(303), 1,
8902 anon_sym_DOT_DOT,
8903 ACTIONS(307), 1,
8904 anon_sym_PLUS_PLUS,
8905 ACTIONS(311), 1,
8906 anon_sym_SLASH,
8907 ACTIONS(313), 1,
8908 anon_sym_CARET,
8909 ACTIONS(319), 1,
8910 anon_sym_LT_DASH,
8911 ACTIONS(321), 1,
8912 anon_sym_SLASH_BSLASH,
8913 ACTIONS(3), 2,
8914 sym_line_comment,
8915 sym_block_comment,
8916 ACTIONS(305), 2,
8917 anon_sym_PLUS,
8918 anon_sym_DASH,
8919 ACTIONS(317), 2,
8920 anon_sym_DASH_GT,
8921 anon_sym_xor,
8922 ACTIONS(337), 2,
8923 anon_sym_LT_DASH_GT,
8924 anon_sym_BSLASH_SLASH,
8925 ACTIONS(580), 2,
8926 ts_builtin_sym_end,
8927 anon_sym_SEMI,
8928 ACTIONS(309), 3,
8929 anon_sym_STAR,
8930 anon_sym_div,
8931 anon_sym_mod,
8932 ACTIONS(315), 4,
8933 anon_sym_EQ,
8934 anon_sym_in,
8935 anon_sym_LT,
8936 anon_sym_GT,
8937 ACTIONS(323), 6,
8938 anon_sym_EQ_EQ,
8939 anon_sym_BANG_EQ,
8940 anon_sym_LT_EQ,
8941 anon_sym_GT_EQ,
8942 anon_sym_subset,
8943 anon_sym_superset,
8944 [7336] = 21,
8945 ACTIONS(265), 1,
8946 anon_sym_LBRACK,
8947 ACTIONS(293), 1,
8948 anon_sym_COLON_COLON,
8949 ACTIONS(295), 1,
8950 anon_sym_union,
8951 ACTIONS(297), 1,
8952 anon_sym_diff,
8953 ACTIONS(299), 1,
8954 anon_sym_symdiff,
8955 ACTIONS(301), 1,
8956 anon_sym_intersect,
8957 ACTIONS(303), 1,
8958 anon_sym_DOT_DOT,
8959 ACTIONS(307), 1,
8960 anon_sym_PLUS_PLUS,
8961 ACTIONS(311), 1,
8962 anon_sym_SLASH,
8963 ACTIONS(313), 1,
8964 anon_sym_CARET,
8965 ACTIONS(319), 1,
8966 anon_sym_LT_DASH,
8967 ACTIONS(321), 1,
8968 anon_sym_SLASH_BSLASH,
8969 ACTIONS(545), 1,
8970 anon_sym_COMMA,
8971 ACTIONS(555), 1,
8972 anon_sym_RPAREN,
8973 ACTIONS(3), 2,
8974 sym_line_comment,
8975 sym_block_comment,
8976 ACTIONS(305), 2,
8977 anon_sym_PLUS,
8978 anon_sym_DASH,
8979 ACTIONS(317), 2,
8980 anon_sym_DASH_GT,
8981 anon_sym_xor,
8982 ACTIONS(337), 2,
8983 anon_sym_LT_DASH_GT,
8984 anon_sym_BSLASH_SLASH,
8985 ACTIONS(309), 3,
8986 anon_sym_STAR,
8987 anon_sym_div,
8988 anon_sym_mod,
8989 ACTIONS(315), 4,
8990 anon_sym_EQ,
8991 anon_sym_in,
8992 anon_sym_LT,
8993 anon_sym_GT,
8994 ACTIONS(323), 6,
8995 anon_sym_EQ_EQ,
8996 anon_sym_BANG_EQ,
8997 anon_sym_LT_EQ,
8998 anon_sym_GT_EQ,
8999 anon_sym_subset,
9000 anon_sym_superset,
9001 [7414] = 20,
9002 ACTIONS(265), 1,
9003 anon_sym_LBRACK,
9004 ACTIONS(293), 1,
9005 anon_sym_COLON_COLON,
9006 ACTIONS(295), 1,
9007 anon_sym_union,
9008 ACTIONS(297), 1,
9009 anon_sym_diff,
9010 ACTIONS(299), 1,
9011 anon_sym_symdiff,
9012 ACTIONS(301), 1,
9013 anon_sym_intersect,
9014 ACTIONS(303), 1,
9015 anon_sym_DOT_DOT,
9016 ACTIONS(307), 1,
9017 anon_sym_PLUS_PLUS,
9018 ACTIONS(311), 1,
9019 anon_sym_SLASH,
9020 ACTIONS(313), 1,
9021 anon_sym_CARET,
9022 ACTIONS(319), 1,
9023 anon_sym_LT_DASH,
9024 ACTIONS(321), 1,
9025 anon_sym_SLASH_BSLASH,
9026 ACTIONS(3), 2,
9027 sym_line_comment,
9028 sym_block_comment,
9029 ACTIONS(305), 2,
9030 anon_sym_PLUS,
9031 anon_sym_DASH,
9032 ACTIONS(317), 2,
9033 anon_sym_DASH_GT,
9034 anon_sym_xor,
9035 ACTIONS(337), 2,
9036 anon_sym_LT_DASH_GT,
9037 anon_sym_BSLASH_SLASH,
9038 ACTIONS(582), 2,
9039 ts_builtin_sym_end,
9040 anon_sym_SEMI,
9041 ACTIONS(309), 3,
9042 anon_sym_STAR,
9043 anon_sym_div,
9044 anon_sym_mod,
9045 ACTIONS(315), 4,
9046 anon_sym_EQ,
9047 anon_sym_in,
9048 anon_sym_LT,
9049 anon_sym_GT,
9050 ACTIONS(323), 6,
9051 anon_sym_EQ_EQ,
9052 anon_sym_BANG_EQ,
9053 anon_sym_LT_EQ,
9054 anon_sym_GT_EQ,
9055 anon_sym_subset,
9056 anon_sym_superset,
9057 [7490] = 20,
9058 ACTIONS(265), 1,
9059 anon_sym_LBRACK,
9060 ACTIONS(293), 1,
9061 anon_sym_COLON_COLON,
9062 ACTIONS(295), 1,
9063 anon_sym_union,
9064 ACTIONS(297), 1,
9065 anon_sym_diff,
9066 ACTIONS(299), 1,
9067 anon_sym_symdiff,
9068 ACTIONS(301), 1,
9069 anon_sym_intersect,
9070 ACTIONS(303), 1,
9071 anon_sym_DOT_DOT,
9072 ACTIONS(307), 1,
9073 anon_sym_PLUS_PLUS,
9074 ACTIONS(311), 1,
9075 anon_sym_SLASH,
9076 ACTIONS(313), 1,
9077 anon_sym_CARET,
9078 ACTIONS(319), 1,
9079 anon_sym_LT_DASH,
9080 ACTIONS(321), 1,
9081 anon_sym_SLASH_BSLASH,
9082 ACTIONS(3), 2,
9083 sym_line_comment,
9084 sym_block_comment,
9085 ACTIONS(305), 2,
9086 anon_sym_PLUS,
9087 anon_sym_DASH,
9088 ACTIONS(317), 2,
9089 anon_sym_DASH_GT,
9090 anon_sym_xor,
9091 ACTIONS(337), 2,
9092 anon_sym_LT_DASH_GT,
9093 anon_sym_BSLASH_SLASH,
9094 ACTIONS(584), 2,
9095 ts_builtin_sym_end,
9096 anon_sym_SEMI,
9097 ACTIONS(309), 3,
9098 anon_sym_STAR,
9099 anon_sym_div,
9100 anon_sym_mod,
9101 ACTIONS(315), 4,
9102 anon_sym_EQ,
9103 anon_sym_in,
9104 anon_sym_LT,
9105 anon_sym_GT,
9106 ACTIONS(323), 6,
9107 anon_sym_EQ_EQ,
9108 anon_sym_BANG_EQ,
9109 anon_sym_LT_EQ,
9110 anon_sym_GT_EQ,
9111 anon_sym_subset,
9112 anon_sym_superset,
9113 [7566] = 20,
9114 ACTIONS(265), 1,
9115 anon_sym_LBRACK,
9116 ACTIONS(293), 1,
9117 anon_sym_COLON_COLON,
9118 ACTIONS(295), 1,
9119 anon_sym_union,
9120 ACTIONS(297), 1,
9121 anon_sym_diff,
9122 ACTIONS(299), 1,
9123 anon_sym_symdiff,
9124 ACTIONS(301), 1,
9125 anon_sym_intersect,
9126 ACTIONS(303), 1,
9127 anon_sym_DOT_DOT,
9128 ACTIONS(307), 1,
9129 anon_sym_PLUS_PLUS,
9130 ACTIONS(311), 1,
9131 anon_sym_SLASH,
9132 ACTIONS(313), 1,
9133 anon_sym_CARET,
9134 ACTIONS(319), 1,
9135 anon_sym_LT_DASH,
9136 ACTIONS(321), 1,
9137 anon_sym_SLASH_BSLASH,
9138 ACTIONS(3), 2,
9139 sym_line_comment,
9140 sym_block_comment,
9141 ACTIONS(305), 2,
9142 anon_sym_PLUS,
9143 anon_sym_DASH,
9144 ACTIONS(317), 2,
9145 anon_sym_DASH_GT,
9146 anon_sym_xor,
9147 ACTIONS(337), 2,
9148 anon_sym_LT_DASH_GT,
9149 anon_sym_BSLASH_SLASH,
9150 ACTIONS(586), 2,
9151 ts_builtin_sym_end,
9152 anon_sym_SEMI,
9153 ACTIONS(309), 3,
9154 anon_sym_STAR,
9155 anon_sym_div,
9156 anon_sym_mod,
9157 ACTIONS(315), 4,
9158 anon_sym_EQ,
9159 anon_sym_in,
9160 anon_sym_LT,
9161 anon_sym_GT,
9162 ACTIONS(323), 6,
9163 anon_sym_EQ_EQ,
9164 anon_sym_BANG_EQ,
9165 anon_sym_LT_EQ,
9166 anon_sym_GT_EQ,
9167 anon_sym_subset,
9168 anon_sym_superset,
9169 [7642] = 20,
9170 ACTIONS(265), 1,
9171 anon_sym_LBRACK,
9172 ACTIONS(293), 1,
9173 anon_sym_COLON_COLON,
9174 ACTIONS(295), 1,
9175 anon_sym_union,
9176 ACTIONS(297), 1,
9177 anon_sym_diff,
9178 ACTIONS(299), 1,
9179 anon_sym_symdiff,
9180 ACTIONS(301), 1,
9181 anon_sym_intersect,
9182 ACTIONS(303), 1,
9183 anon_sym_DOT_DOT,
9184 ACTIONS(307), 1,
9185 anon_sym_PLUS_PLUS,
9186 ACTIONS(311), 1,
9187 anon_sym_SLASH,
9188 ACTIONS(313), 1,
9189 anon_sym_CARET,
9190 ACTIONS(319), 1,
9191 anon_sym_LT_DASH,
9192 ACTIONS(321), 1,
9193 anon_sym_SLASH_BSLASH,
9194 ACTIONS(3), 2,
9195 sym_line_comment,
9196 sym_block_comment,
9197 ACTIONS(305), 2,
9198 anon_sym_PLUS,
9199 anon_sym_DASH,
9200 ACTIONS(317), 2,
9201 anon_sym_DASH_GT,
9202 anon_sym_xor,
9203 ACTIONS(337), 2,
9204 anon_sym_LT_DASH_GT,
9205 anon_sym_BSLASH_SLASH,
9206 ACTIONS(588), 2,
9207 ts_builtin_sym_end,
9208 anon_sym_SEMI,
9209 ACTIONS(309), 3,
9210 anon_sym_STAR,
9211 anon_sym_div,
9212 anon_sym_mod,
9213 ACTIONS(315), 4,
9214 anon_sym_EQ,
9215 anon_sym_in,
9216 anon_sym_LT,
9217 anon_sym_GT,
9218 ACTIONS(323), 6,
9219 anon_sym_EQ_EQ,
9220 anon_sym_BANG_EQ,
9221 anon_sym_LT_EQ,
9222 anon_sym_GT_EQ,
9223 anon_sym_subset,
9224 anon_sym_superset,
9225 [7718] = 20,
9226 ACTIONS(265), 1,
9227 anon_sym_LBRACK,
9228 ACTIONS(293), 1,
9229 anon_sym_COLON_COLON,
9230 ACTIONS(295), 1,
9231 anon_sym_union,
9232 ACTIONS(297), 1,
9233 anon_sym_diff,
9234 ACTIONS(299), 1,
9235 anon_sym_symdiff,
9236 ACTIONS(301), 1,
9237 anon_sym_intersect,
9238 ACTIONS(303), 1,
9239 anon_sym_DOT_DOT,
9240 ACTIONS(307), 1,
9241 anon_sym_PLUS_PLUS,
9242 ACTIONS(311), 1,
9243 anon_sym_SLASH,
9244 ACTIONS(313), 1,
9245 anon_sym_CARET,
9246 ACTIONS(319), 1,
9247 anon_sym_LT_DASH,
9248 ACTIONS(321), 1,
9249 anon_sym_SLASH_BSLASH,
9250 ACTIONS(3), 2,
9251 sym_line_comment,
9252 sym_block_comment,
9253 ACTIONS(305), 2,
9254 anon_sym_PLUS,
9255 anon_sym_DASH,
9256 ACTIONS(317), 2,
9257 anon_sym_DASH_GT,
9258 anon_sym_xor,
9259 ACTIONS(337), 2,
9260 anon_sym_LT_DASH_GT,
9261 anon_sym_BSLASH_SLASH,
9262 ACTIONS(590), 2,
9263 ts_builtin_sym_end,
9264 anon_sym_SEMI,
9265 ACTIONS(309), 3,
9266 anon_sym_STAR,
9267 anon_sym_div,
9268 anon_sym_mod,
9269 ACTIONS(315), 4,
9270 anon_sym_EQ,
9271 anon_sym_in,
9272 anon_sym_LT,
9273 anon_sym_GT,
9274 ACTIONS(323), 6,
9275 anon_sym_EQ_EQ,
9276 anon_sym_BANG_EQ,
9277 anon_sym_LT_EQ,
9278 anon_sym_GT_EQ,
9279 anon_sym_subset,
9280 anon_sym_superset,
9281 [7794] = 20,
9282 ACTIONS(265), 1,
9283 anon_sym_LBRACK,
9284 ACTIONS(293), 1,
9285 anon_sym_COLON_COLON,
9286 ACTIONS(295), 1,
9287 anon_sym_union,
9288 ACTIONS(297), 1,
9289 anon_sym_diff,
9290 ACTIONS(299), 1,
9291 anon_sym_symdiff,
9292 ACTIONS(301), 1,
9293 anon_sym_intersect,
9294 ACTIONS(303), 1,
9295 anon_sym_DOT_DOT,
9296 ACTIONS(307), 1,
9297 anon_sym_PLUS_PLUS,
9298 ACTIONS(311), 1,
9299 anon_sym_SLASH,
9300 ACTIONS(313), 1,
9301 anon_sym_CARET,
9302 ACTIONS(319), 1,
9303 anon_sym_LT_DASH,
9304 ACTIONS(321), 1,
9305 anon_sym_SLASH_BSLASH,
9306 ACTIONS(3), 2,
9307 sym_line_comment,
9308 sym_block_comment,
9309 ACTIONS(305), 2,
9310 anon_sym_PLUS,
9311 anon_sym_DASH,
9312 ACTIONS(317), 2,
9313 anon_sym_DASH_GT,
9314 anon_sym_xor,
9315 ACTIONS(337), 2,
9316 anon_sym_LT_DASH_GT,
9317 anon_sym_BSLASH_SLASH,
9318 ACTIONS(592), 2,
9319 ts_builtin_sym_end,
9320 anon_sym_SEMI,
9321 ACTIONS(309), 3,
9322 anon_sym_STAR,
9323 anon_sym_div,
9324 anon_sym_mod,
9325 ACTIONS(315), 4,
9326 anon_sym_EQ,
9327 anon_sym_in,
9328 anon_sym_LT,
9329 anon_sym_GT,
9330 ACTIONS(323), 6,
9331 anon_sym_EQ_EQ,
9332 anon_sym_BANG_EQ,
9333 anon_sym_LT_EQ,
9334 anon_sym_GT_EQ,
9335 anon_sym_subset,
9336 anon_sym_superset,
9337 [7870] = 21,
9338 ACTIONS(265), 1,
9339 anon_sym_LBRACK,
9340 ACTIONS(293), 1,
9341 anon_sym_COLON_COLON,
9342 ACTIONS(295), 1,
9343 anon_sym_union,
9344 ACTIONS(297), 1,
9345 anon_sym_diff,
9346 ACTIONS(299), 1,
9347 anon_sym_symdiff,
9348 ACTIONS(301), 1,
9349 anon_sym_intersect,
9350 ACTIONS(303), 1,
9351 anon_sym_DOT_DOT,
9352 ACTIONS(307), 1,
9353 anon_sym_PLUS_PLUS,
9354 ACTIONS(311), 1,
9355 anon_sym_SLASH,
9356 ACTIONS(313), 1,
9357 anon_sym_CARET,
9358 ACTIONS(319), 1,
9359 anon_sym_LT_DASH,
9360 ACTIONS(321), 1,
9361 anon_sym_SLASH_BSLASH,
9362 ACTIONS(545), 1,
9363 anon_sym_COMMA,
9364 ACTIONS(594), 1,
9365 anon_sym_RPAREN,
9366 ACTIONS(3), 2,
9367 sym_line_comment,
9368 sym_block_comment,
9369 ACTIONS(305), 2,
9370 anon_sym_PLUS,
9371 anon_sym_DASH,
9372 ACTIONS(317), 2,
9373 anon_sym_DASH_GT,
9374 anon_sym_xor,
9375 ACTIONS(337), 2,
9376 anon_sym_LT_DASH_GT,
9377 anon_sym_BSLASH_SLASH,
9378 ACTIONS(309), 3,
9379 anon_sym_STAR,
9380 anon_sym_div,
9381 anon_sym_mod,
9382 ACTIONS(315), 4,
9383 anon_sym_EQ,
9384 anon_sym_in,
9385 anon_sym_LT,
9386 anon_sym_GT,
9387 ACTIONS(323), 6,
9388 anon_sym_EQ_EQ,
9389 anon_sym_BANG_EQ,
9390 anon_sym_LT_EQ,
9391 anon_sym_GT_EQ,
9392 anon_sym_subset,
9393 anon_sym_superset,
9394 [7948] = 5,
9395 ACTIONS(259), 1,
9396 anon_sym_LPAREN,
9397 ACTIONS(596), 1,
9398 anon_sym_EQ,
9399 ACTIONS(3), 2,
9400 sym_line_comment,
9401 sym_block_comment,
9402 ACTIONS(257), 8,
9403 anon_sym_COLON,
9404 anon_sym_in,
9405 anon_sym_LT_DASH,
9406 anon_sym_LT,
9407 anon_sym_GT,
9408 anon_sym_PLUS,
9409 anon_sym_DASH,
9410 anon_sym_SLASH,
9411 ACTIONS(255), 23,
9412 anon_sym_COLON_COLON,
9413 anon_sym_LBRACK,
9414 anon_sym_LT_DASH_GT,
9415 anon_sym_DASH_GT,
9416 anon_sym_BSLASH_SLASH,
9417 anon_sym_xor,
9418 anon_sym_SLASH_BSLASH,
9419 anon_sym_EQ_EQ,
9420 anon_sym_BANG_EQ,
9421 anon_sym_LT_EQ,
9422 anon_sym_GT_EQ,
9423 anon_sym_subset,
9424 anon_sym_superset,
9425 anon_sym_union,
9426 anon_sym_diff,
9427 anon_sym_symdiff,
9428 anon_sym_intersect,
9429 anon_sym_DOT_DOT,
9430 anon_sym_PLUS_PLUS,
9431 anon_sym_STAR,
9432 anon_sym_div,
9433 anon_sym_mod,
9434 anon_sym_CARET,
9435 [7994] = 20,
9436 ACTIONS(265), 1,
9437 anon_sym_LBRACK,
9438 ACTIONS(293), 1,
9439 anon_sym_COLON_COLON,
9440 ACTIONS(295), 1,
9441 anon_sym_union,
9442 ACTIONS(297), 1,
9443 anon_sym_diff,
9444 ACTIONS(299), 1,
9445 anon_sym_symdiff,
9446 ACTIONS(301), 1,
9447 anon_sym_intersect,
9448 ACTIONS(303), 1,
9449 anon_sym_DOT_DOT,
9450 ACTIONS(307), 1,
9451 anon_sym_PLUS_PLUS,
9452 ACTIONS(311), 1,
9453 anon_sym_SLASH,
9454 ACTIONS(313), 1,
9455 anon_sym_CARET,
9456 ACTIONS(319), 1,
9457 anon_sym_LT_DASH,
9458 ACTIONS(321), 1,
9459 anon_sym_SLASH_BSLASH,
9460 ACTIONS(3), 2,
9461 sym_line_comment,
9462 sym_block_comment,
9463 ACTIONS(305), 2,
9464 anon_sym_PLUS,
9465 anon_sym_DASH,
9466 ACTIONS(317), 2,
9467 anon_sym_DASH_GT,
9468 anon_sym_xor,
9469 ACTIONS(337), 2,
9470 anon_sym_LT_DASH_GT,
9471 anon_sym_BSLASH_SLASH,
9472 ACTIONS(599), 2,
9473 ts_builtin_sym_end,
9474 anon_sym_SEMI,
9475 ACTIONS(309), 3,
9476 anon_sym_STAR,
9477 anon_sym_div,
9478 anon_sym_mod,
9479 ACTIONS(315), 4,
9480 anon_sym_EQ,
9481 anon_sym_in,
9482 anon_sym_LT,
9483 anon_sym_GT,
9484 ACTIONS(323), 6,
9485 anon_sym_EQ_EQ,
9486 anon_sym_BANG_EQ,
9487 anon_sym_LT_EQ,
9488 anon_sym_GT_EQ,
9489 anon_sym_subset,
9490 anon_sym_superset,
9491 [8070] = 15,
9492 ACTIONS(15), 1,
9493 anon_sym_LBRACE,
9494 ACTIONS(27), 1,
9495 anon_sym_LPAREN,
9496 ACTIONS(29), 1,
9497 anon_sym_LBRACK,
9498 ACTIONS(31), 1,
9499 anon_sym_if,
9500 ACTIONS(35), 1,
9501 anon_sym_let,
9502 ACTIONS(37), 1,
9503 anon_sym_not,
9504 ACTIONS(39), 1,
9505 anon_sym_DQUOTE,
9506 ACTIONS(55), 1,
9507 sym_integer_literal,
9508 ACTIONS(192), 1,
9509 sym_identifier,
9510 STATE(124), 1,
9511 sym__expression,
9512 ACTIONS(3), 2,
9513 sym_line_comment,
9514 sym_block_comment,
9515 ACTIONS(33), 2,
9516 anon_sym_DASH,
9517 anon_sym_,
9518 ACTIONS(51), 2,
9519 sym_absent,
9520 sym_float_literal,
9521 ACTIONS(53), 2,
9522 anon_sym_true,
9523 anon_sym_false,
9524 STATE(32), 16,
9525 sym_parenthesised_expression,
9526 sym_array_comprehension,
9527 sym_call,
9528 sym_generator_call,
9529 sym_if_then_else,
9530 sym_indexed_access,
9531 sym_infix_operator,
9532 sym_let_expression,
9533 sym_prefix_operator,
9534 sym_set_comprehension,
9535 sym_string_interpolation,
9536 sym__literal,
9537 sym_array_literal,
9538 sym_boolean_literal,
9539 sym_set_literal,
9540 sym_string_literal,
9541 [8135] = 15,
9542 ACTIONS(15), 1,
9543 anon_sym_LBRACE,
9544 ACTIONS(27), 1,
9545 anon_sym_LPAREN,
9546 ACTIONS(29), 1,
9547 anon_sym_LBRACK,
9548 ACTIONS(31), 1,
9549 anon_sym_if,
9550 ACTIONS(35), 1,
9551 anon_sym_let,
9552 ACTIONS(37), 1,
9553 anon_sym_not,
9554 ACTIONS(39), 1,
9555 anon_sym_DQUOTE,
9556 ACTIONS(55), 1,
9557 sym_integer_literal,
9558 ACTIONS(192), 1,
9559 sym_identifier,
9560 STATE(112), 1,
9561 sym__expression,
9562 ACTIONS(3), 2,
9563 sym_line_comment,
9564 sym_block_comment,
9565 ACTIONS(33), 2,
9566 anon_sym_DASH,
9567 anon_sym_,
9568 ACTIONS(51), 2,
9569 sym_absent,
9570 sym_float_literal,
9571 ACTIONS(53), 2,
9572 anon_sym_true,
9573 anon_sym_false,
9574 STATE(32), 16,
9575 sym_parenthesised_expression,
9576 sym_array_comprehension,
9577 sym_call,
9578 sym_generator_call,
9579 sym_if_then_else,
9580 sym_indexed_access,
9581 sym_infix_operator,
9582 sym_let_expression,
9583 sym_prefix_operator,
9584 sym_set_comprehension,
9585 sym_string_interpolation,
9586 sym__literal,
9587 sym_array_literal,
9588 sym_boolean_literal,
9589 sym_set_literal,
9590 sym_string_literal,
9591 [8200] = 15,
9592 ACTIONS(15), 1,
9593 anon_sym_LBRACE,
9594 ACTIONS(27), 1,
9595 anon_sym_LPAREN,
9596 ACTIONS(29), 1,
9597 anon_sym_LBRACK,
9598 ACTIONS(31), 1,
9599 anon_sym_if,
9600 ACTIONS(35), 1,
9601 anon_sym_let,
9602 ACTIONS(37), 1,
9603 anon_sym_not,
9604 ACTIONS(39), 1,
9605 anon_sym_DQUOTE,
9606 ACTIONS(55), 1,
9607 sym_integer_literal,
9608 ACTIONS(192), 1,
9609 sym_identifier,
9610 STATE(15), 1,
9611 sym__expression,
9612 ACTIONS(3), 2,
9613 sym_line_comment,
9614 sym_block_comment,
9615 ACTIONS(33), 2,
9616 anon_sym_DASH,
9617 anon_sym_,
9618 ACTIONS(51), 2,
9619 sym_absent,
9620 sym_float_literal,
9621 ACTIONS(53), 2,
9622 anon_sym_true,
9623 anon_sym_false,
9624 STATE(32), 16,
9625 sym_parenthesised_expression,
9626 sym_array_comprehension,
9627 sym_call,
9628 sym_generator_call,
9629 sym_if_then_else,
9630 sym_indexed_access,
9631 sym_infix_operator,
9632 sym_let_expression,
9633 sym_prefix_operator,
9634 sym_set_comprehension,
9635 sym_string_interpolation,
9636 sym__literal,
9637 sym_array_literal,
9638 sym_boolean_literal,
9639 sym_set_literal,
9640 sym_string_literal,
9641 [8265] = 15,
9642 ACTIONS(15), 1,
9643 anon_sym_LBRACE,
9644 ACTIONS(27), 1,
9645 anon_sym_LPAREN,
9646 ACTIONS(29), 1,
9647 anon_sym_LBRACK,
9648 ACTIONS(31), 1,
9649 anon_sym_if,
9650 ACTIONS(35), 1,
9651 anon_sym_let,
9652 ACTIONS(37), 1,
9653 anon_sym_not,
9654 ACTIONS(39), 1,
9655 anon_sym_DQUOTE,
9656 ACTIONS(55), 1,
9657 sym_integer_literal,
9658 ACTIONS(192), 1,
9659 sym_identifier,
9660 STATE(79), 1,
9661 sym__expression,
9662 ACTIONS(3), 2,
9663 sym_line_comment,
9664 sym_block_comment,
9665 ACTIONS(33), 2,
9666 anon_sym_DASH,
9667 anon_sym_,
9668 ACTIONS(51), 2,
9669 sym_absent,
9670 sym_float_literal,
9671 ACTIONS(53), 2,
9672 anon_sym_true,
9673 anon_sym_false,
9674 STATE(32), 16,
9675 sym_parenthesised_expression,
9676 sym_array_comprehension,
9677 sym_call,
9678 sym_generator_call,
9679 sym_if_then_else,
9680 sym_indexed_access,
9681 sym_infix_operator,
9682 sym_let_expression,
9683 sym_prefix_operator,
9684 sym_set_comprehension,
9685 sym_string_interpolation,
9686 sym__literal,
9687 sym_array_literal,
9688 sym_boolean_literal,
9689 sym_set_literal,
9690 sym_string_literal,
9691 [8330] = 15,
9692 ACTIONS(15), 1,
9693 anon_sym_LBRACE,
9694 ACTIONS(27), 1,
9695 anon_sym_LPAREN,
9696 ACTIONS(29), 1,
9697 anon_sym_LBRACK,
9698 ACTIONS(31), 1,
9699 anon_sym_if,
9700 ACTIONS(35), 1,
9701 anon_sym_let,
9702 ACTIONS(37), 1,
9703 anon_sym_not,
9704 ACTIONS(39), 1,
9705 anon_sym_DQUOTE,
9706 ACTIONS(55), 1,
9707 sym_integer_literal,
9708 ACTIONS(192), 1,
9709 sym_identifier,
9710 STATE(85), 1,
9711 sym__expression,
9712 ACTIONS(3), 2,
9713 sym_line_comment,
9714 sym_block_comment,
9715 ACTIONS(33), 2,
9716 anon_sym_DASH,
9717 anon_sym_,
9718 ACTIONS(51), 2,
9719 sym_absent,
9720 sym_float_literal,
9721 ACTIONS(53), 2,
9722 anon_sym_true,
9723 anon_sym_false,
9724 STATE(32), 16,
9725 sym_parenthesised_expression,
9726 sym_array_comprehension,
9727 sym_call,
9728 sym_generator_call,
9729 sym_if_then_else,
9730 sym_indexed_access,
9731 sym_infix_operator,
9732 sym_let_expression,
9733 sym_prefix_operator,
9734 sym_set_comprehension,
9735 sym_string_interpolation,
9736 sym__literal,
9737 sym_array_literal,
9738 sym_boolean_literal,
9739 sym_set_literal,
9740 sym_string_literal,
9741 [8395] = 15,
9742 ACTIONS(15), 1,
9743 anon_sym_LBRACE,
9744 ACTIONS(27), 1,
9745 anon_sym_LPAREN,
9746 ACTIONS(29), 1,
9747 anon_sym_LBRACK,
9748 ACTIONS(31), 1,
9749 anon_sym_if,
9750 ACTIONS(35), 1,
9751 anon_sym_let,
9752 ACTIONS(37), 1,
9753 anon_sym_not,
9754 ACTIONS(39), 1,
9755 anon_sym_DQUOTE,
9756 ACTIONS(55), 1,
9757 sym_integer_literal,
9758 ACTIONS(192), 1,
9759 sym_identifier,
9760 STATE(160), 1,
9761 sym__expression,
9762 ACTIONS(3), 2,
9763 sym_line_comment,
9764 sym_block_comment,
9765 ACTIONS(33), 2,
9766 anon_sym_DASH,
9767 anon_sym_,
9768 ACTIONS(51), 2,
9769 sym_absent,
9770 sym_float_literal,
9771 ACTIONS(53), 2,
9772 anon_sym_true,
9773 anon_sym_false,
9774 STATE(32), 16,
9775 sym_parenthesised_expression,
9776 sym_array_comprehension,
9777 sym_call,
9778 sym_generator_call,
9779 sym_if_then_else,
9780 sym_indexed_access,
9781 sym_infix_operator,
9782 sym_let_expression,
9783 sym_prefix_operator,
9784 sym_set_comprehension,
9785 sym_string_interpolation,
9786 sym__literal,
9787 sym_array_literal,
9788 sym_boolean_literal,
9789 sym_set_literal,
9790 sym_string_literal,
9791 [8460] = 15,
9792 ACTIONS(15), 1,
9793 anon_sym_LBRACE,
9794 ACTIONS(27), 1,
9795 anon_sym_LPAREN,
9796 ACTIONS(29), 1,
9797 anon_sym_LBRACK,
9798 ACTIONS(31), 1,
9799 anon_sym_if,
9800 ACTIONS(35), 1,
9801 anon_sym_let,
9802 ACTIONS(37), 1,
9803 anon_sym_not,
9804 ACTIONS(39), 1,
9805 anon_sym_DQUOTE,
9806 ACTIONS(55), 1,
9807 sym_integer_literal,
9808 ACTIONS(192), 1,
9809 sym_identifier,
9810 STATE(111), 1,
9811 sym__expression,
9812 ACTIONS(3), 2,
9813 sym_line_comment,
9814 sym_block_comment,
9815 ACTIONS(33), 2,
9816 anon_sym_DASH,
9817 anon_sym_,
9818 ACTIONS(51), 2,
9819 sym_absent,
9820 sym_float_literal,
9821 ACTIONS(53), 2,
9822 anon_sym_true,
9823 anon_sym_false,
9824 STATE(32), 16,
9825 sym_parenthesised_expression,
9826 sym_array_comprehension,
9827 sym_call,
9828 sym_generator_call,
9829 sym_if_then_else,
9830 sym_indexed_access,
9831 sym_infix_operator,
9832 sym_let_expression,
9833 sym_prefix_operator,
9834 sym_set_comprehension,
9835 sym_string_interpolation,
9836 sym__literal,
9837 sym_array_literal,
9838 sym_boolean_literal,
9839 sym_set_literal,
9840 sym_string_literal,
9841 [8525] = 20,
9842 ACTIONS(265), 1,
9843 anon_sym_LBRACK,
9844 ACTIONS(293), 1,
9845 anon_sym_COLON_COLON,
9846 ACTIONS(295), 1,
9847 anon_sym_union,
9848 ACTIONS(297), 1,
9849 anon_sym_diff,
9850 ACTIONS(299), 1,
9851 anon_sym_symdiff,
9852 ACTIONS(301), 1,
9853 anon_sym_intersect,
9854 ACTIONS(303), 1,
9855 anon_sym_DOT_DOT,
9856 ACTIONS(307), 1,
9857 anon_sym_PLUS_PLUS,
9858 ACTIONS(311), 1,
9859 anon_sym_SLASH,
9860 ACTIONS(313), 1,
9861 anon_sym_CARET,
9862 ACTIONS(319), 1,
9863 anon_sym_LT_DASH,
9864 ACTIONS(321), 1,
9865 anon_sym_SLASH_BSLASH,
9866 ACTIONS(601), 1,
9867 anon_sym_RPAREN,
9868 ACTIONS(3), 2,
9869 sym_line_comment,
9870 sym_block_comment,
9871 ACTIONS(305), 2,
9872 anon_sym_PLUS,
9873 anon_sym_DASH,
9874 ACTIONS(317), 2,
9875 anon_sym_DASH_GT,
9876 anon_sym_xor,
9877 ACTIONS(337), 2,
9878 anon_sym_LT_DASH_GT,
9879 anon_sym_BSLASH_SLASH,
9880 ACTIONS(309), 3,
9881 anon_sym_STAR,
9882 anon_sym_div,
9883 anon_sym_mod,
9884 ACTIONS(315), 4,
9885 anon_sym_EQ,
9886 anon_sym_in,
9887 anon_sym_LT,
9888 anon_sym_GT,
9889 ACTIONS(323), 6,
9890 anon_sym_EQ_EQ,
9891 anon_sym_BANG_EQ,
9892 anon_sym_LT_EQ,
9893 anon_sym_GT_EQ,
9894 anon_sym_subset,
9895 anon_sym_superset,
9896 [8600] = 15,
9897 ACTIONS(15), 1,
9898 anon_sym_LBRACE,
9899 ACTIONS(27), 1,
9900 anon_sym_LPAREN,
9901 ACTIONS(29), 1,
9902 anon_sym_LBRACK,
9903 ACTIONS(31), 1,
9904 anon_sym_if,
9905 ACTIONS(35), 1,
9906 anon_sym_let,
9907 ACTIONS(37), 1,
9908 anon_sym_not,
9909 ACTIONS(39), 1,
9910 anon_sym_DQUOTE,
9911 ACTIONS(55), 1,
9912 sym_integer_literal,
9913 ACTIONS(192), 1,
9914 sym_identifier,
9915 STATE(153), 1,
9916 sym__expression,
9917 ACTIONS(3), 2,
9918 sym_line_comment,
9919 sym_block_comment,
9920 ACTIONS(33), 2,
9921 anon_sym_DASH,
9922 anon_sym_,
9923 ACTIONS(51), 2,
9924 sym_absent,
9925 sym_float_literal,
9926 ACTIONS(53), 2,
9927 anon_sym_true,
9928 anon_sym_false,
9929 STATE(32), 16,
9930 sym_parenthesised_expression,
9931 sym_array_comprehension,
9932 sym_call,
9933 sym_generator_call,
9934 sym_if_then_else,
9935 sym_indexed_access,
9936 sym_infix_operator,
9937 sym_let_expression,
9938 sym_prefix_operator,
9939 sym_set_comprehension,
9940 sym_string_interpolation,
9941 sym__literal,
9942 sym_array_literal,
9943 sym_boolean_literal,
9944 sym_set_literal,
9945 sym_string_literal,
9946 [8665] = 15,
9947 ACTIONS(15), 1,
9948 anon_sym_LBRACE,
9949 ACTIONS(27), 1,
9950 anon_sym_LPAREN,
9951 ACTIONS(29), 1,
9952 anon_sym_LBRACK,
9953 ACTIONS(31), 1,
9954 anon_sym_if,
9955 ACTIONS(35), 1,
9956 anon_sym_let,
9957 ACTIONS(37), 1,
9958 anon_sym_not,
9959 ACTIONS(39), 1,
9960 anon_sym_DQUOTE,
9961 ACTIONS(55), 1,
9962 sym_integer_literal,
9963 ACTIONS(192), 1,
9964 sym_identifier,
9965 STATE(36), 1,
9966 sym__expression,
9967 ACTIONS(3), 2,
9968 sym_line_comment,
9969 sym_block_comment,
9970 ACTIONS(33), 2,
9971 anon_sym_DASH,
9972 anon_sym_,
9973 ACTIONS(51), 2,
9974 sym_absent,
9975 sym_float_literal,
9976 ACTIONS(53), 2,
9977 anon_sym_true,
9978 anon_sym_false,
9979 STATE(32), 16,
9980 sym_parenthesised_expression,
9981 sym_array_comprehension,
9982 sym_call,
9983 sym_generator_call,
9984 sym_if_then_else,
9985 sym_indexed_access,
9986 sym_infix_operator,
9987 sym_let_expression,
9988 sym_prefix_operator,
9989 sym_set_comprehension,
9990 sym_string_interpolation,
9991 sym__literal,
9992 sym_array_literal,
9993 sym_boolean_literal,
9994 sym_set_literal,
9995 sym_string_literal,
9996 [8730] = 15,
9997 ACTIONS(15), 1,
9998 anon_sym_LBRACE,
9999 ACTIONS(27), 1,
10000 anon_sym_LPAREN,
10001 ACTIONS(29), 1,
10002 anon_sym_LBRACK,
10003 ACTIONS(31), 1,
10004 anon_sym_if,
10005 ACTIONS(35), 1,
10006 anon_sym_let,
10007 ACTIONS(37), 1,
10008 anon_sym_not,
10009 ACTIONS(39), 1,
10010 anon_sym_DQUOTE,
10011 ACTIONS(55), 1,
10012 sym_integer_literal,
10013 ACTIONS(192), 1,
10014 sym_identifier,
10015 STATE(113), 1,
10016 sym__expression,
10017 ACTIONS(3), 2,
10018 sym_line_comment,
10019 sym_block_comment,
10020 ACTIONS(33), 2,
10021 anon_sym_DASH,
10022 anon_sym_,
10023 ACTIONS(51), 2,
10024 sym_absent,
10025 sym_float_literal,
10026 ACTIONS(53), 2,
10027 anon_sym_true,
10028 anon_sym_false,
10029 STATE(32), 16,
10030 sym_parenthesised_expression,
10031 sym_array_comprehension,
10032 sym_call,
10033 sym_generator_call,
10034 sym_if_then_else,
10035 sym_indexed_access,
10036 sym_infix_operator,
10037 sym_let_expression,
10038 sym_prefix_operator,
10039 sym_set_comprehension,
10040 sym_string_interpolation,
10041 sym__literal,
10042 sym_array_literal,
10043 sym_boolean_literal,
10044 sym_set_literal,
10045 sym_string_literal,
10046 [8795] = 15,
10047 ACTIONS(15), 1,
10048 anon_sym_LBRACE,
10049 ACTIONS(27), 1,
10050 anon_sym_LPAREN,
10051 ACTIONS(29), 1,
10052 anon_sym_LBRACK,
10053 ACTIONS(31), 1,
10054 anon_sym_if,
10055 ACTIONS(35), 1,
10056 anon_sym_let,
10057 ACTIONS(37), 1,
10058 anon_sym_not,
10059 ACTIONS(39), 1,
10060 anon_sym_DQUOTE,
10061 ACTIONS(55), 1,
10062 sym_integer_literal,
10063 ACTIONS(192), 1,
10064 sym_identifier,
10065 STATE(132), 1,
10066 sym__expression,
10067 ACTIONS(3), 2,
10068 sym_line_comment,
10069 sym_block_comment,
10070 ACTIONS(33), 2,
10071 anon_sym_DASH,
10072 anon_sym_,
10073 ACTIONS(51), 2,
10074 sym_absent,
10075 sym_float_literal,
10076 ACTIONS(53), 2,
10077 anon_sym_true,
10078 anon_sym_false,
10079 STATE(32), 16,
10080 sym_parenthesised_expression,
10081 sym_array_comprehension,
10082 sym_call,
10083 sym_generator_call,
10084 sym_if_then_else,
10085 sym_indexed_access,
10086 sym_infix_operator,
10087 sym_let_expression,
10088 sym_prefix_operator,
10089 sym_set_comprehension,
10090 sym_string_interpolation,
10091 sym__literal,
10092 sym_array_literal,
10093 sym_boolean_literal,
10094 sym_set_literal,
10095 sym_string_literal,
10096 [8860] = 15,
10097 ACTIONS(15), 1,
10098 anon_sym_LBRACE,
10099 ACTIONS(27), 1,
10100 anon_sym_LPAREN,
10101 ACTIONS(29), 1,
10102 anon_sym_LBRACK,
10103 ACTIONS(31), 1,
10104 anon_sym_if,
10105 ACTIONS(35), 1,
10106 anon_sym_let,
10107 ACTIONS(37), 1,
10108 anon_sym_not,
10109 ACTIONS(39), 1,
10110 anon_sym_DQUOTE,
10111 ACTIONS(55), 1,
10112 sym_integer_literal,
10113 ACTIONS(192), 1,
10114 sym_identifier,
10115 STATE(82), 1,
10116 sym__expression,
10117 ACTIONS(3), 2,
10118 sym_line_comment,
10119 sym_block_comment,
10120 ACTIONS(33), 2,
10121 anon_sym_DASH,
10122 anon_sym_,
10123 ACTIONS(51), 2,
10124 sym_absent,
10125 sym_float_literal,
10126 ACTIONS(53), 2,
10127 anon_sym_true,
10128 anon_sym_false,
10129 STATE(32), 16,
10130 sym_parenthesised_expression,
10131 sym_array_comprehension,
10132 sym_call,
10133 sym_generator_call,
10134 sym_if_then_else,
10135 sym_indexed_access,
10136 sym_infix_operator,
10137 sym_let_expression,
10138 sym_prefix_operator,
10139 sym_set_comprehension,
10140 sym_string_interpolation,
10141 sym__literal,
10142 sym_array_literal,
10143 sym_boolean_literal,
10144 sym_set_literal,
10145 sym_string_literal,
10146 [8925] = 15,
10147 ACTIONS(15), 1,
10148 anon_sym_LBRACE,
10149 ACTIONS(27), 1,
10150 anon_sym_LPAREN,
10151 ACTIONS(29), 1,
10152 anon_sym_LBRACK,
10153 ACTIONS(31), 1,
10154 anon_sym_if,
10155 ACTIONS(35), 1,
10156 anon_sym_let,
10157 ACTIONS(37), 1,
10158 anon_sym_not,
10159 ACTIONS(39), 1,
10160 anon_sym_DQUOTE,
10161 ACTIONS(55), 1,
10162 sym_integer_literal,
10163 ACTIONS(192), 1,
10164 sym_identifier,
10165 STATE(102), 1,
10166 sym__expression,
10167 ACTIONS(3), 2,
10168 sym_line_comment,
10169 sym_block_comment,
10170 ACTIONS(33), 2,
10171 anon_sym_DASH,
10172 anon_sym_,
10173 ACTIONS(51), 2,
10174 sym_absent,
10175 sym_float_literal,
10176 ACTIONS(53), 2,
10177 anon_sym_true,
10178 anon_sym_false,
10179 STATE(32), 16,
10180 sym_parenthesised_expression,
10181 sym_array_comprehension,
10182 sym_call,
10183 sym_generator_call,
10184 sym_if_then_else,
10185 sym_indexed_access,
10186 sym_infix_operator,
10187 sym_let_expression,
10188 sym_prefix_operator,
10189 sym_set_comprehension,
10190 sym_string_interpolation,
10191 sym__literal,
10192 sym_array_literal,
10193 sym_boolean_literal,
10194 sym_set_literal,
10195 sym_string_literal,
10196 [8990] = 20,
10197 ACTIONS(265), 1,
10198 anon_sym_LBRACK,
10199 ACTIONS(293), 1,
10200 anon_sym_COLON_COLON,
10201 ACTIONS(295), 1,
10202 anon_sym_union,
10203 ACTIONS(297), 1,
10204 anon_sym_diff,
10205 ACTIONS(299), 1,
10206 anon_sym_symdiff,
10207 ACTIONS(301), 1,
10208 anon_sym_intersect,
10209 ACTIONS(303), 1,
10210 anon_sym_DOT_DOT,
10211 ACTIONS(307), 1,
10212 anon_sym_PLUS_PLUS,
10213 ACTIONS(311), 1,
10214 anon_sym_SLASH,
10215 ACTIONS(313), 1,
10216 anon_sym_CARET,
10217 ACTIONS(319), 1,
10218 anon_sym_LT_DASH,
10219 ACTIONS(321), 1,
10220 anon_sym_SLASH_BSLASH,
10221 ACTIONS(603), 1,
10222 anon_sym_then,
10223 ACTIONS(3), 2,
10224 sym_line_comment,
10225 sym_block_comment,
10226 ACTIONS(305), 2,
10227 anon_sym_PLUS,
10228 anon_sym_DASH,
10229 ACTIONS(317), 2,
10230 anon_sym_DASH_GT,
10231 anon_sym_xor,
10232 ACTIONS(337), 2,
10233 anon_sym_LT_DASH_GT,
10234 anon_sym_BSLASH_SLASH,
10235 ACTIONS(309), 3,
10236 anon_sym_STAR,
10237 anon_sym_div,
10238 anon_sym_mod,
10239 ACTIONS(315), 4,
10240 anon_sym_EQ,
10241 anon_sym_in,
10242 anon_sym_LT,
10243 anon_sym_GT,
10244 ACTIONS(323), 6,
10245 anon_sym_EQ_EQ,
10246 anon_sym_BANG_EQ,
10247 anon_sym_LT_EQ,
10248 anon_sym_GT_EQ,
10249 anon_sym_subset,
10250 anon_sym_superset,
10251 [9065] = 20,
10252 ACTIONS(265), 1,
10253 anon_sym_LBRACK,
10254 ACTIONS(293), 1,
10255 anon_sym_COLON_COLON,
10256 ACTIONS(295), 1,
10257 anon_sym_union,
10258 ACTIONS(297), 1,
10259 anon_sym_diff,
10260 ACTIONS(299), 1,
10261 anon_sym_symdiff,
10262 ACTIONS(301), 1,
10263 anon_sym_intersect,
10264 ACTIONS(303), 1,
10265 anon_sym_DOT_DOT,
10266 ACTIONS(307), 1,
10267 anon_sym_PLUS_PLUS,
10268 ACTIONS(311), 1,
10269 anon_sym_SLASH,
10270 ACTIONS(313), 1,
10271 anon_sym_CARET,
10272 ACTIONS(319), 1,
10273 anon_sym_LT_DASH,
10274 ACTIONS(321), 1,
10275 anon_sym_SLASH_BSLASH,
10276 ACTIONS(605), 1,
10277 anon_sym_endif,
10278 ACTIONS(3), 2,
10279 sym_line_comment,
10280 sym_block_comment,
10281 ACTIONS(305), 2,
10282 anon_sym_PLUS,
10283 anon_sym_DASH,
10284 ACTIONS(317), 2,
10285 anon_sym_DASH_GT,
10286 anon_sym_xor,
10287 ACTIONS(337), 2,
10288 anon_sym_LT_DASH_GT,
10289 anon_sym_BSLASH_SLASH,
10290 ACTIONS(309), 3,
10291 anon_sym_STAR,
10292 anon_sym_div,
10293 anon_sym_mod,
10294 ACTIONS(315), 4,
10295 anon_sym_EQ,
10296 anon_sym_in,
10297 anon_sym_LT,
10298 anon_sym_GT,
10299 ACTIONS(323), 6,
10300 anon_sym_EQ_EQ,
10301 anon_sym_BANG_EQ,
10302 anon_sym_LT_EQ,
10303 anon_sym_GT_EQ,
10304 anon_sym_subset,
10305 anon_sym_superset,
10306 [9140] = 15,
10307 ACTIONS(15), 1,
10308 anon_sym_LBRACE,
10309 ACTIONS(27), 1,
10310 anon_sym_LPAREN,
10311 ACTIONS(29), 1,
10312 anon_sym_LBRACK,
10313 ACTIONS(31), 1,
10314 anon_sym_if,
10315 ACTIONS(35), 1,
10316 anon_sym_let,
10317 ACTIONS(37), 1,
10318 anon_sym_not,
10319 ACTIONS(39), 1,
10320 anon_sym_DQUOTE,
10321 ACTIONS(55), 1,
10322 sym_integer_literal,
10323 ACTIONS(192), 1,
10324 sym_identifier,
10325 STATE(58), 1,
10326 sym__expression,
10327 ACTIONS(3), 2,
10328 sym_line_comment,
10329 sym_block_comment,
10330 ACTIONS(33), 2,
10331 anon_sym_DASH,
10332 anon_sym_,
10333 ACTIONS(51), 2,
10334 sym_absent,
10335 sym_float_literal,
10336 ACTIONS(53), 2,
10337 anon_sym_true,
10338 anon_sym_false,
10339 STATE(32), 16,
10340 sym_parenthesised_expression,
10341 sym_array_comprehension,
10342 sym_call,
10343 sym_generator_call,
10344 sym_if_then_else,
10345 sym_indexed_access,
10346 sym_infix_operator,
10347 sym_let_expression,
10348 sym_prefix_operator,
10349 sym_set_comprehension,
10350 sym_string_interpolation,
10351 sym__literal,
10352 sym_array_literal,
10353 sym_boolean_literal,
10354 sym_set_literal,
10355 sym_string_literal,
10356 [9205] = 15,
10357 ACTIONS(15), 1,
10358 anon_sym_LBRACE,
10359 ACTIONS(27), 1,
10360 anon_sym_LPAREN,
10361 ACTIONS(29), 1,
10362 anon_sym_LBRACK,
10363 ACTIONS(31), 1,
10364 anon_sym_if,
10365 ACTIONS(35), 1,
10366 anon_sym_let,
10367 ACTIONS(37), 1,
10368 anon_sym_not,
10369 ACTIONS(39), 1,
10370 anon_sym_DQUOTE,
10371 ACTIONS(55), 1,
10372 sym_integer_literal,
10373 ACTIONS(192), 1,
10374 sym_identifier,
10375 STATE(53), 1,
10376 sym__expression,
10377 ACTIONS(3), 2,
10378 sym_line_comment,
10379 sym_block_comment,
10380 ACTIONS(33), 2,
10381 anon_sym_DASH,
10382 anon_sym_,
10383 ACTIONS(51), 2,
10384 sym_absent,
10385 sym_float_literal,
10386 ACTIONS(53), 2,
10387 anon_sym_true,
10388 anon_sym_false,
10389 STATE(32), 16,
10390 sym_parenthesised_expression,
10391 sym_array_comprehension,
10392 sym_call,
10393 sym_generator_call,
10394 sym_if_then_else,
10395 sym_indexed_access,
10396 sym_infix_operator,
10397 sym_let_expression,
10398 sym_prefix_operator,
10399 sym_set_comprehension,
10400 sym_string_interpolation,
10401 sym__literal,
10402 sym_array_literal,
10403 sym_boolean_literal,
10404 sym_set_literal,
10405 sym_string_literal,
10406 [9270] = 15,
10407 ACTIONS(15), 1,
10408 anon_sym_LBRACE,
10409 ACTIONS(27), 1,
10410 anon_sym_LPAREN,
10411 ACTIONS(29), 1,
10412 anon_sym_LBRACK,
10413 ACTIONS(31), 1,
10414 anon_sym_if,
10415 ACTIONS(35), 1,
10416 anon_sym_let,
10417 ACTIONS(37), 1,
10418 anon_sym_not,
10419 ACTIONS(39), 1,
10420 anon_sym_DQUOTE,
10421 ACTIONS(55), 1,
10422 sym_integer_literal,
10423 ACTIONS(192), 1,
10424 sym_identifier,
10425 STATE(51), 1,
10426 sym__expression,
10427 ACTIONS(3), 2,
10428 sym_line_comment,
10429 sym_block_comment,
10430 ACTIONS(33), 2,
10431 anon_sym_DASH,
10432 anon_sym_,
10433 ACTIONS(51), 2,
10434 sym_absent,
10435 sym_float_literal,
10436 ACTIONS(53), 2,
10437 anon_sym_true,
10438 anon_sym_false,
10439 STATE(32), 16,
10440 sym_parenthesised_expression,
10441 sym_array_comprehension,
10442 sym_call,
10443 sym_generator_call,
10444 sym_if_then_else,
10445 sym_indexed_access,
10446 sym_infix_operator,
10447 sym_let_expression,
10448 sym_prefix_operator,
10449 sym_set_comprehension,
10450 sym_string_interpolation,
10451 sym__literal,
10452 sym_array_literal,
10453 sym_boolean_literal,
10454 sym_set_literal,
10455 sym_string_literal,
10456 [9335] = 15,
10457 ACTIONS(15), 1,
10458 anon_sym_LBRACE,
10459 ACTIONS(27), 1,
10460 anon_sym_LPAREN,
10461 ACTIONS(29), 1,
10462 anon_sym_LBRACK,
10463 ACTIONS(31), 1,
10464 anon_sym_if,
10465 ACTIONS(35), 1,
10466 anon_sym_let,
10467 ACTIONS(37), 1,
10468 anon_sym_not,
10469 ACTIONS(39), 1,
10470 anon_sym_DQUOTE,
10471 ACTIONS(55), 1,
10472 sym_integer_literal,
10473 ACTIONS(192), 1,
10474 sym_identifier,
10475 STATE(48), 1,
10476 sym__expression,
10477 ACTIONS(3), 2,
10478 sym_line_comment,
10479 sym_block_comment,
10480 ACTIONS(33), 2,
10481 anon_sym_DASH,
10482 anon_sym_,
10483 ACTIONS(51), 2,
10484 sym_absent,
10485 sym_float_literal,
10486 ACTIONS(53), 2,
10487 anon_sym_true,
10488 anon_sym_false,
10489 STATE(32), 16,
10490 sym_parenthesised_expression,
10491 sym_array_comprehension,
10492 sym_call,
10493 sym_generator_call,
10494 sym_if_then_else,
10495 sym_indexed_access,
10496 sym_infix_operator,
10497 sym_let_expression,
10498 sym_prefix_operator,
10499 sym_set_comprehension,
10500 sym_string_interpolation,
10501 sym__literal,
10502 sym_array_literal,
10503 sym_boolean_literal,
10504 sym_set_literal,
10505 sym_string_literal,
10506 [9400] = 15,
10507 ACTIONS(15), 1,
10508 anon_sym_LBRACE,
10509 ACTIONS(27), 1,
10510 anon_sym_LPAREN,
10511 ACTIONS(29), 1,
10512 anon_sym_LBRACK,
10513 ACTIONS(31), 1,
10514 anon_sym_if,
10515 ACTIONS(35), 1,
10516 anon_sym_let,
10517 ACTIONS(37), 1,
10518 anon_sym_not,
10519 ACTIONS(39), 1,
10520 anon_sym_DQUOTE,
10521 ACTIONS(55), 1,
10522 sym_integer_literal,
10523 ACTIONS(192), 1,
10524 sym_identifier,
10525 STATE(45), 1,
10526 sym__expression,
10527 ACTIONS(3), 2,
10528 sym_line_comment,
10529 sym_block_comment,
10530 ACTIONS(33), 2,
10531 anon_sym_DASH,
10532 anon_sym_,
10533 ACTIONS(51), 2,
10534 sym_absent,
10535 sym_float_literal,
10536 ACTIONS(53), 2,
10537 anon_sym_true,
10538 anon_sym_false,
10539 STATE(32), 16,
10540 sym_parenthesised_expression,
10541 sym_array_comprehension,
10542 sym_call,
10543 sym_generator_call,
10544 sym_if_then_else,
10545 sym_indexed_access,
10546 sym_infix_operator,
10547 sym_let_expression,
10548 sym_prefix_operator,
10549 sym_set_comprehension,
10550 sym_string_interpolation,
10551 sym__literal,
10552 sym_array_literal,
10553 sym_boolean_literal,
10554 sym_set_literal,
10555 sym_string_literal,
10556 [9465] = 15,
10557 ACTIONS(15), 1,
10558 anon_sym_LBRACE,
10559 ACTIONS(27), 1,
10560 anon_sym_LPAREN,
10561 ACTIONS(29), 1,
10562 anon_sym_LBRACK,
10563 ACTIONS(31), 1,
10564 anon_sym_if,
10565 ACTIONS(35), 1,
10566 anon_sym_let,
10567 ACTIONS(37), 1,
10568 anon_sym_not,
10569 ACTIONS(39), 1,
10570 anon_sym_DQUOTE,
10571 ACTIONS(55), 1,
10572 sym_integer_literal,
10573 ACTIONS(192), 1,
10574 sym_identifier,
10575 STATE(38), 1,
10576 sym__expression,
10577 ACTIONS(3), 2,
10578 sym_line_comment,
10579 sym_block_comment,
10580 ACTIONS(33), 2,
10581 anon_sym_DASH,
10582 anon_sym_,
10583 ACTIONS(51), 2,
10584 sym_absent,
10585 sym_float_literal,
10586 ACTIONS(53), 2,
10587 anon_sym_true,
10588 anon_sym_false,
10589 STATE(32), 16,
10590 sym_parenthesised_expression,
10591 sym_array_comprehension,
10592 sym_call,
10593 sym_generator_call,
10594 sym_if_then_else,
10595 sym_indexed_access,
10596 sym_infix_operator,
10597 sym_let_expression,
10598 sym_prefix_operator,
10599 sym_set_comprehension,
10600 sym_string_interpolation,
10601 sym__literal,
10602 sym_array_literal,
10603 sym_boolean_literal,
10604 sym_set_literal,
10605 sym_string_literal,
10606 [9530] = 15,
10607 ACTIONS(15), 1,
10608 anon_sym_LBRACE,
10609 ACTIONS(27), 1,
10610 anon_sym_LPAREN,
10611 ACTIONS(29), 1,
10612 anon_sym_LBRACK,
10613 ACTIONS(31), 1,
10614 anon_sym_if,
10615 ACTIONS(35), 1,
10616 anon_sym_let,
10617 ACTIONS(37), 1,
10618 anon_sym_not,
10619 ACTIONS(39), 1,
10620 anon_sym_DQUOTE,
10621 ACTIONS(55), 1,
10622 sym_integer_literal,
10623 ACTIONS(192), 1,
10624 sym_identifier,
10625 STATE(31), 1,
10626 sym__expression,
10627 ACTIONS(3), 2,
10628 sym_line_comment,
10629 sym_block_comment,
10630 ACTIONS(33), 2,
10631 anon_sym_DASH,
10632 anon_sym_,
10633 ACTIONS(51), 2,
10634 sym_absent,
10635 sym_float_literal,
10636 ACTIONS(53), 2,
10637 anon_sym_true,
10638 anon_sym_false,
10639 STATE(32), 16,
10640 sym_parenthesised_expression,
10641 sym_array_comprehension,
10642 sym_call,
10643 sym_generator_call,
10644 sym_if_then_else,
10645 sym_indexed_access,
10646 sym_infix_operator,
10647 sym_let_expression,
10648 sym_prefix_operator,
10649 sym_set_comprehension,
10650 sym_string_interpolation,
10651 sym__literal,
10652 sym_array_literal,
10653 sym_boolean_literal,
10654 sym_set_literal,
10655 sym_string_literal,
10656 [9595] = 15,
10657 ACTIONS(15), 1,
10658 anon_sym_LBRACE,
10659 ACTIONS(27), 1,
10660 anon_sym_LPAREN,
10661 ACTIONS(29), 1,
10662 anon_sym_LBRACK,
10663 ACTIONS(31), 1,
10664 anon_sym_if,
10665 ACTIONS(35), 1,
10666 anon_sym_let,
10667 ACTIONS(37), 1,
10668 anon_sym_not,
10669 ACTIONS(39), 1,
10670 anon_sym_DQUOTE,
10671 ACTIONS(55), 1,
10672 sym_integer_literal,
10673 ACTIONS(192), 1,
10674 sym_identifier,
10675 STATE(28), 1,
10676 sym__expression,
10677 ACTIONS(3), 2,
10678 sym_line_comment,
10679 sym_block_comment,
10680 ACTIONS(33), 2,
10681 anon_sym_DASH,
10682 anon_sym_,
10683 ACTIONS(51), 2,
10684 sym_absent,
10685 sym_float_literal,
10686 ACTIONS(53), 2,
10687 anon_sym_true,
10688 anon_sym_false,
10689 STATE(32), 16,
10690 sym_parenthesised_expression,
10691 sym_array_comprehension,
10692 sym_call,
10693 sym_generator_call,
10694 sym_if_then_else,
10695 sym_indexed_access,
10696 sym_infix_operator,
10697 sym_let_expression,
10698 sym_prefix_operator,
10699 sym_set_comprehension,
10700 sym_string_interpolation,
10701 sym__literal,
10702 sym_array_literal,
10703 sym_boolean_literal,
10704 sym_set_literal,
10705 sym_string_literal,
10706 [9660] = 15,
10707 ACTIONS(15), 1,
10708 anon_sym_LBRACE,
10709 ACTIONS(27), 1,
10710 anon_sym_LPAREN,
10711 ACTIONS(29), 1,
10712 anon_sym_LBRACK,
10713 ACTIONS(31), 1,
10714 anon_sym_if,
10715 ACTIONS(35), 1,
10716 anon_sym_let,
10717 ACTIONS(37), 1,
10718 anon_sym_not,
10719 ACTIONS(39), 1,
10720 anon_sym_DQUOTE,
10721 ACTIONS(55), 1,
10722 sym_integer_literal,
10723 ACTIONS(192), 1,
10724 sym_identifier,
10725 STATE(26), 1,
10726 sym__expression,
10727 ACTIONS(3), 2,
10728 sym_line_comment,
10729 sym_block_comment,
10730 ACTIONS(33), 2,
10731 anon_sym_DASH,
10732 anon_sym_,
10733 ACTIONS(51), 2,
10734 sym_absent,
10735 sym_float_literal,
10736 ACTIONS(53), 2,
10737 anon_sym_true,
10738 anon_sym_false,
10739 STATE(32), 16,
10740 sym_parenthesised_expression,
10741 sym_array_comprehension,
10742 sym_call,
10743 sym_generator_call,
10744 sym_if_then_else,
10745 sym_indexed_access,
10746 sym_infix_operator,
10747 sym_let_expression,
10748 sym_prefix_operator,
10749 sym_set_comprehension,
10750 sym_string_interpolation,
10751 sym__literal,
10752 sym_array_literal,
10753 sym_boolean_literal,
10754 sym_set_literal,
10755 sym_string_literal,
10756 [9725] = 15,
10757 ACTIONS(15), 1,
10758 anon_sym_LBRACE,
10759 ACTIONS(27), 1,
10760 anon_sym_LPAREN,
10761 ACTIONS(29), 1,
10762 anon_sym_LBRACK,
10763 ACTIONS(31), 1,
10764 anon_sym_if,
10765 ACTIONS(35), 1,
10766 anon_sym_let,
10767 ACTIONS(37), 1,
10768 anon_sym_not,
10769 ACTIONS(39), 1,
10770 anon_sym_DQUOTE,
10771 ACTIONS(55), 1,
10772 sym_integer_literal,
10773 ACTIONS(192), 1,
10774 sym_identifier,
10775 STATE(24), 1,
10776 sym__expression,
10777 ACTIONS(3), 2,
10778 sym_line_comment,
10779 sym_block_comment,
10780 ACTIONS(33), 2,
10781 anon_sym_DASH,
10782 anon_sym_,
10783 ACTIONS(51), 2,
10784 sym_absent,
10785 sym_float_literal,
10786 ACTIONS(53), 2,
10787 anon_sym_true,
10788 anon_sym_false,
10789 STATE(32), 16,
10790 sym_parenthesised_expression,
10791 sym_array_comprehension,
10792 sym_call,
10793 sym_generator_call,
10794 sym_if_then_else,
10795 sym_indexed_access,
10796 sym_infix_operator,
10797 sym_let_expression,
10798 sym_prefix_operator,
10799 sym_set_comprehension,
10800 sym_string_interpolation,
10801 sym__literal,
10802 sym_array_literal,
10803 sym_boolean_literal,
10804 sym_set_literal,
10805 sym_string_literal,
10806 [9790] = 15,
10807 ACTIONS(15), 1,
10808 anon_sym_LBRACE,
10809 ACTIONS(27), 1,
10810 anon_sym_LPAREN,
10811 ACTIONS(29), 1,
10812 anon_sym_LBRACK,
10813 ACTIONS(31), 1,
10814 anon_sym_if,
10815 ACTIONS(35), 1,
10816 anon_sym_let,
10817 ACTIONS(37), 1,
10818 anon_sym_not,
10819 ACTIONS(39), 1,
10820 anon_sym_DQUOTE,
10821 ACTIONS(55), 1,
10822 sym_integer_literal,
10823 ACTIONS(192), 1,
10824 sym_identifier,
10825 STATE(99), 1,
10826 sym__expression,
10827 ACTIONS(3), 2,
10828 sym_line_comment,
10829 sym_block_comment,
10830 ACTIONS(33), 2,
10831 anon_sym_DASH,
10832 anon_sym_,
10833 ACTIONS(51), 2,
10834 sym_absent,
10835 sym_float_literal,
10836 ACTIONS(53), 2,
10837 anon_sym_true,
10838 anon_sym_false,
10839 STATE(32), 16,
10840 sym_parenthesised_expression,
10841 sym_array_comprehension,
10842 sym_call,
10843 sym_generator_call,
10844 sym_if_then_else,
10845 sym_indexed_access,
10846 sym_infix_operator,
10847 sym_let_expression,
10848 sym_prefix_operator,
10849 sym_set_comprehension,
10850 sym_string_interpolation,
10851 sym__literal,
10852 sym_array_literal,
10853 sym_boolean_literal,
10854 sym_set_literal,
10855 sym_string_literal,
10856 [9855] = 15,
10857 ACTIONS(15), 1,
10858 anon_sym_LBRACE,
10859 ACTIONS(27), 1,
10860 anon_sym_LPAREN,
10861 ACTIONS(29), 1,
10862 anon_sym_LBRACK,
10863 ACTIONS(31), 1,
10864 anon_sym_if,
10865 ACTIONS(35), 1,
10866 anon_sym_let,
10867 ACTIONS(37), 1,
10868 anon_sym_not,
10869 ACTIONS(39), 1,
10870 anon_sym_DQUOTE,
10871 ACTIONS(55), 1,
10872 sym_integer_literal,
10873 ACTIONS(192), 1,
10874 sym_identifier,
10875 STATE(131), 1,
10876 sym__expression,
10877 ACTIONS(3), 2,
10878 sym_line_comment,
10879 sym_block_comment,
10880 ACTIONS(33), 2,
10881 anon_sym_DASH,
10882 anon_sym_,
10883 ACTIONS(51), 2,
10884 sym_absent,
10885 sym_float_literal,
10886 ACTIONS(53), 2,
10887 anon_sym_true,
10888 anon_sym_false,
10889 STATE(32), 16,
10890 sym_parenthesised_expression,
10891 sym_array_comprehension,
10892 sym_call,
10893 sym_generator_call,
10894 sym_if_then_else,
10895 sym_indexed_access,
10896 sym_infix_operator,
10897 sym_let_expression,
10898 sym_prefix_operator,
10899 sym_set_comprehension,
10900 sym_string_interpolation,
10901 sym__literal,
10902 sym_array_literal,
10903 sym_boolean_literal,
10904 sym_set_literal,
10905 sym_string_literal,
10906 [9920] = 15,
10907 ACTIONS(15), 1,
10908 anon_sym_LBRACE,
10909 ACTIONS(27), 1,
10910 anon_sym_LPAREN,
10911 ACTIONS(29), 1,
10912 anon_sym_LBRACK,
10913 ACTIONS(31), 1,
10914 anon_sym_if,
10915 ACTIONS(35), 1,
10916 anon_sym_let,
10917 ACTIONS(37), 1,
10918 anon_sym_not,
10919 ACTIONS(39), 1,
10920 anon_sym_DQUOTE,
10921 ACTIONS(55), 1,
10922 sym_integer_literal,
10923 ACTIONS(192), 1,
10924 sym_identifier,
10925 STATE(23), 1,
10926 sym__expression,
10927 ACTIONS(3), 2,
10928 sym_line_comment,
10929 sym_block_comment,
10930 ACTIONS(33), 2,
10931 anon_sym_DASH,
10932 anon_sym_,
10933 ACTIONS(51), 2,
10934 sym_absent,
10935 sym_float_literal,
10936 ACTIONS(53), 2,
10937 anon_sym_true,
10938 anon_sym_false,
10939 STATE(32), 16,
10940 sym_parenthesised_expression,
10941 sym_array_comprehension,
10942 sym_call,
10943 sym_generator_call,
10944 sym_if_then_else,
10945 sym_indexed_access,
10946 sym_infix_operator,
10947 sym_let_expression,
10948 sym_prefix_operator,
10949 sym_set_comprehension,
10950 sym_string_interpolation,
10951 sym__literal,
10952 sym_array_literal,
10953 sym_boolean_literal,
10954 sym_set_literal,
10955 sym_string_literal,
10956 [9985] = 15,
10957 ACTIONS(15), 1,
10958 anon_sym_LBRACE,
10959 ACTIONS(27), 1,
10960 anon_sym_LPAREN,
10961 ACTIONS(29), 1,
10962 anon_sym_LBRACK,
10963 ACTIONS(31), 1,
10964 anon_sym_if,
10965 ACTIONS(35), 1,
10966 anon_sym_let,
10967 ACTIONS(37), 1,
10968 anon_sym_not,
10969 ACTIONS(39), 1,
10970 anon_sym_DQUOTE,
10971 ACTIONS(55), 1,
10972 sym_integer_literal,
10973 ACTIONS(192), 1,
10974 sym_identifier,
10975 STATE(63), 1,
10976 sym__expression,
10977 ACTIONS(3), 2,
10978 sym_line_comment,
10979 sym_block_comment,
10980 ACTIONS(33), 2,
10981 anon_sym_DASH,
10982 anon_sym_,
10983 ACTIONS(51), 2,
10984 sym_absent,
10985 sym_float_literal,
10986 ACTIONS(53), 2,
10987 anon_sym_true,
10988 anon_sym_false,
10989 STATE(32), 16,
10990 sym_parenthesised_expression,
10991 sym_array_comprehension,
10992 sym_call,
10993 sym_generator_call,
10994 sym_if_then_else,
10995 sym_indexed_access,
10996 sym_infix_operator,
10997 sym_let_expression,
10998 sym_prefix_operator,
10999 sym_set_comprehension,
11000 sym_string_interpolation,
11001 sym__literal,
11002 sym_array_literal,
11003 sym_boolean_literal,
11004 sym_set_literal,
11005 sym_string_literal,
11006 [10050] = 15,
11007 ACTIONS(15), 1,
11008 anon_sym_LBRACE,
11009 ACTIONS(27), 1,
11010 anon_sym_LPAREN,
11011 ACTIONS(29), 1,
11012 anon_sym_LBRACK,
11013 ACTIONS(31), 1,
11014 anon_sym_if,
11015 ACTIONS(35), 1,
11016 anon_sym_let,
11017 ACTIONS(37), 1,
11018 anon_sym_not,
11019 ACTIONS(39), 1,
11020 anon_sym_DQUOTE,
11021 ACTIONS(55), 1,
11022 sym_integer_literal,
11023 ACTIONS(192), 1,
11024 sym_identifier,
11025 STATE(108), 1,
11026 sym__expression,
11027 ACTIONS(3), 2,
11028 sym_line_comment,
11029 sym_block_comment,
11030 ACTIONS(33), 2,
11031 anon_sym_DASH,
11032 anon_sym_,
11033 ACTIONS(51), 2,
11034 sym_absent,
11035 sym_float_literal,
11036 ACTIONS(53), 2,
11037 anon_sym_true,
11038 anon_sym_false,
11039 STATE(32), 16,
11040 sym_parenthesised_expression,
11041 sym_array_comprehension,
11042 sym_call,
11043 sym_generator_call,
11044 sym_if_then_else,
11045 sym_indexed_access,
11046 sym_infix_operator,
11047 sym_let_expression,
11048 sym_prefix_operator,
11049 sym_set_comprehension,
11050 sym_string_interpolation,
11051 sym__literal,
11052 sym_array_literal,
11053 sym_boolean_literal,
11054 sym_set_literal,
11055 sym_string_literal,
11056 [10115] = 15,
11057 ACTIONS(15), 1,
11058 anon_sym_LBRACE,
11059 ACTIONS(27), 1,
11060 anon_sym_LPAREN,
11061 ACTIONS(29), 1,
11062 anon_sym_LBRACK,
11063 ACTIONS(31), 1,
11064 anon_sym_if,
11065 ACTIONS(35), 1,
11066 anon_sym_let,
11067 ACTIONS(37), 1,
11068 anon_sym_not,
11069 ACTIONS(39), 1,
11070 anon_sym_DQUOTE,
11071 ACTIONS(55), 1,
11072 sym_integer_literal,
11073 ACTIONS(192), 1,
11074 sym_identifier,
11075 STATE(168), 1,
11076 sym__expression,
11077 ACTIONS(3), 2,
11078 sym_line_comment,
11079 sym_block_comment,
11080 ACTIONS(33), 2,
11081 anon_sym_DASH,
11082 anon_sym_,
11083 ACTIONS(51), 2,
11084 sym_absent,
11085 sym_float_literal,
11086 ACTIONS(53), 2,
11087 anon_sym_true,
11088 anon_sym_false,
11089 STATE(32), 16,
11090 sym_parenthesised_expression,
11091 sym_array_comprehension,
11092 sym_call,
11093 sym_generator_call,
11094 sym_if_then_else,
11095 sym_indexed_access,
11096 sym_infix_operator,
11097 sym_let_expression,
11098 sym_prefix_operator,
11099 sym_set_comprehension,
11100 sym_string_interpolation,
11101 sym__literal,
11102 sym_array_literal,
11103 sym_boolean_literal,
11104 sym_set_literal,
11105 sym_string_literal,
11106 [10180] = 15,
11107 ACTIONS(15), 1,
11108 anon_sym_LBRACE,
11109 ACTIONS(27), 1,
11110 anon_sym_LPAREN,
11111 ACTIONS(29), 1,
11112 anon_sym_LBRACK,
11113 ACTIONS(31), 1,
11114 anon_sym_if,
11115 ACTIONS(35), 1,
11116 anon_sym_let,
11117 ACTIONS(37), 1,
11118 anon_sym_not,
11119 ACTIONS(39), 1,
11120 anon_sym_DQUOTE,
11121 ACTIONS(55), 1,
11122 sym_integer_literal,
11123 ACTIONS(192), 1,
11124 sym_identifier,
11125 STATE(29), 1,
11126 sym__expression,
11127 ACTIONS(3), 2,
11128 sym_line_comment,
11129 sym_block_comment,
11130 ACTIONS(33), 2,
11131 anon_sym_DASH,
11132 anon_sym_,
11133 ACTIONS(51), 2,
11134 sym_absent,
11135 sym_float_literal,
11136 ACTIONS(53), 2,
11137 anon_sym_true,
11138 anon_sym_false,
11139 STATE(32), 16,
11140 sym_parenthesised_expression,
11141 sym_array_comprehension,
11142 sym_call,
11143 sym_generator_call,
11144 sym_if_then_else,
11145 sym_indexed_access,
11146 sym_infix_operator,
11147 sym_let_expression,
11148 sym_prefix_operator,
11149 sym_set_comprehension,
11150 sym_string_interpolation,
11151 sym__literal,
11152 sym_array_literal,
11153 sym_boolean_literal,
11154 sym_set_literal,
11155 sym_string_literal,
11156 [10245] = 15,
11157 ACTIONS(15), 1,
11158 anon_sym_LBRACE,
11159 ACTIONS(27), 1,
11160 anon_sym_LPAREN,
11161 ACTIONS(29), 1,
11162 anon_sym_LBRACK,
11163 ACTIONS(31), 1,
11164 anon_sym_if,
11165 ACTIONS(35), 1,
11166 anon_sym_let,
11167 ACTIONS(37), 1,
11168 anon_sym_not,
11169 ACTIONS(39), 1,
11170 anon_sym_DQUOTE,
11171 ACTIONS(55), 1,
11172 sym_integer_literal,
11173 ACTIONS(192), 1,
11174 sym_identifier,
11175 STATE(109), 1,
11176 sym__expression,
11177 ACTIONS(3), 2,
11178 sym_line_comment,
11179 sym_block_comment,
11180 ACTIONS(33), 2,
11181 anon_sym_DASH,
11182 anon_sym_,
11183 ACTIONS(51), 2,
11184 sym_absent,
11185 sym_float_literal,
11186 ACTIONS(53), 2,
11187 anon_sym_true,
11188 anon_sym_false,
11189 STATE(32), 16,
11190 sym_parenthesised_expression,
11191 sym_array_comprehension,
11192 sym_call,
11193 sym_generator_call,
11194 sym_if_then_else,
11195 sym_indexed_access,
11196 sym_infix_operator,
11197 sym_let_expression,
11198 sym_prefix_operator,
11199 sym_set_comprehension,
11200 sym_string_interpolation,
11201 sym__literal,
11202 sym_array_literal,
11203 sym_boolean_literal,
11204 sym_set_literal,
11205 sym_string_literal,
11206 [10310] = 15,
11207 ACTIONS(15), 1,
11208 anon_sym_LBRACE,
11209 ACTIONS(27), 1,
11210 anon_sym_LPAREN,
11211 ACTIONS(29), 1,
11212 anon_sym_LBRACK,
11213 ACTIONS(31), 1,
11214 anon_sym_if,
11215 ACTIONS(35), 1,
11216 anon_sym_let,
11217 ACTIONS(37), 1,
11218 anon_sym_not,
11219 ACTIONS(39), 1,
11220 anon_sym_DQUOTE,
11221 ACTIONS(55), 1,
11222 sym_integer_literal,
11223 ACTIONS(192), 1,
11224 sym_identifier,
11225 STATE(76), 1,
11226 sym__expression,
11227 ACTIONS(3), 2,
11228 sym_line_comment,
11229 sym_block_comment,
11230 ACTIONS(33), 2,
11231 anon_sym_DASH,
11232 anon_sym_,
11233 ACTIONS(51), 2,
11234 sym_absent,
11235 sym_float_literal,
11236 ACTIONS(53), 2,
11237 anon_sym_true,
11238 anon_sym_false,
11239 STATE(32), 16,
11240 sym_parenthesised_expression,
11241 sym_array_comprehension,
11242 sym_call,
11243 sym_generator_call,
11244 sym_if_then_else,
11245 sym_indexed_access,
11246 sym_infix_operator,
11247 sym_let_expression,
11248 sym_prefix_operator,
11249 sym_set_comprehension,
11250 sym_string_interpolation,
11251 sym__literal,
11252 sym_array_literal,
11253 sym_boolean_literal,
11254 sym_set_literal,
11255 sym_string_literal,
11256 [10375] = 15,
11257 ACTIONS(15), 1,
11258 anon_sym_LBRACE,
11259 ACTIONS(27), 1,
11260 anon_sym_LPAREN,
11261 ACTIONS(29), 1,
11262 anon_sym_LBRACK,
11263 ACTIONS(31), 1,
11264 anon_sym_if,
11265 ACTIONS(35), 1,
11266 anon_sym_let,
11267 ACTIONS(37), 1,
11268 anon_sym_not,
11269 ACTIONS(39), 1,
11270 anon_sym_DQUOTE,
11271 ACTIONS(55), 1,
11272 sym_integer_literal,
11273 ACTIONS(192), 1,
11274 sym_identifier,
11275 STATE(154), 1,
11276 sym__expression,
11277 ACTIONS(3), 2,
11278 sym_line_comment,
11279 sym_block_comment,
11280 ACTIONS(33), 2,
11281 anon_sym_DASH,
11282 anon_sym_,
11283 ACTIONS(51), 2,
11284 sym_absent,
11285 sym_float_literal,
11286 ACTIONS(53), 2,
11287 anon_sym_true,
11288 anon_sym_false,
11289 STATE(32), 16,
11290 sym_parenthesised_expression,
11291 sym_array_comprehension,
11292 sym_call,
11293 sym_generator_call,
11294 sym_if_then_else,
11295 sym_indexed_access,
11296 sym_infix_operator,
11297 sym_let_expression,
11298 sym_prefix_operator,
11299 sym_set_comprehension,
11300 sym_string_interpolation,
11301 sym__literal,
11302 sym_array_literal,
11303 sym_boolean_literal,
11304 sym_set_literal,
11305 sym_string_literal,
11306 [10440] = 20,
11307 ACTIONS(265), 1,
11308 anon_sym_LBRACK,
11309 ACTIONS(293), 1,
11310 anon_sym_COLON_COLON,
11311 ACTIONS(295), 1,
11312 anon_sym_union,
11313 ACTIONS(297), 1,
11314 anon_sym_diff,
11315 ACTIONS(299), 1,
11316 anon_sym_symdiff,
11317 ACTIONS(301), 1,
11318 anon_sym_intersect,
11319 ACTIONS(303), 1,
11320 anon_sym_DOT_DOT,
11321 ACTIONS(307), 1,
11322 anon_sym_PLUS_PLUS,
11323 ACTIONS(311), 1,
11324 anon_sym_SLASH,
11325 ACTIONS(313), 1,
11326 anon_sym_CARET,
11327 ACTIONS(319), 1,
11328 anon_sym_LT_DASH,
11329 ACTIONS(321), 1,
11330 anon_sym_SLASH_BSLASH,
11331 ACTIONS(607), 1,
11332 anon_sym_then,
11333 ACTIONS(3), 2,
11334 sym_line_comment,
11335 sym_block_comment,
11336 ACTIONS(305), 2,
11337 anon_sym_PLUS,
11338 anon_sym_DASH,
11339 ACTIONS(317), 2,
11340 anon_sym_DASH_GT,
11341 anon_sym_xor,
11342 ACTIONS(337), 2,
11343 anon_sym_LT_DASH_GT,
11344 anon_sym_BSLASH_SLASH,
11345 ACTIONS(309), 3,
11346 anon_sym_STAR,
11347 anon_sym_div,
11348 anon_sym_mod,
11349 ACTIONS(315), 4,
11350 anon_sym_EQ,
11351 anon_sym_in,
11352 anon_sym_LT,
11353 anon_sym_GT,
11354 ACTIONS(323), 6,
11355 anon_sym_EQ_EQ,
11356 anon_sym_BANG_EQ,
11357 anon_sym_LT_EQ,
11358 anon_sym_GT_EQ,
11359 anon_sym_subset,
11360 anon_sym_superset,
11361 [10515] = 20,
11362 ACTIONS(265), 1,
11363 anon_sym_LBRACK,
11364 ACTIONS(293), 1,
11365 anon_sym_COLON_COLON,
11366 ACTIONS(295), 1,
11367 anon_sym_union,
11368 ACTIONS(297), 1,
11369 anon_sym_diff,
11370 ACTIONS(299), 1,
11371 anon_sym_symdiff,
11372 ACTIONS(301), 1,
11373 anon_sym_intersect,
11374 ACTIONS(303), 1,
11375 anon_sym_DOT_DOT,
11376 ACTIONS(307), 1,
11377 anon_sym_PLUS_PLUS,
11378 ACTIONS(311), 1,
11379 anon_sym_SLASH,
11380 ACTIONS(313), 1,
11381 anon_sym_CARET,
11382 ACTIONS(319), 1,
11383 anon_sym_LT_DASH,
11384 ACTIONS(321), 1,
11385 anon_sym_SLASH_BSLASH,
11386 ACTIONS(609), 1,
11387 anon_sym_RPAREN,
11388 ACTIONS(3), 2,
11389 sym_line_comment,
11390 sym_block_comment,
11391 ACTIONS(305), 2,
11392 anon_sym_PLUS,
11393 anon_sym_DASH,
11394 ACTIONS(317), 2,
11395 anon_sym_DASH_GT,
11396 anon_sym_xor,
11397 ACTIONS(337), 2,
11398 anon_sym_LT_DASH_GT,
11399 anon_sym_BSLASH_SLASH,
11400 ACTIONS(309), 3,
11401 anon_sym_STAR,
11402 anon_sym_div,
11403 anon_sym_mod,
11404 ACTIONS(315), 4,
11405 anon_sym_EQ,
11406 anon_sym_in,
11407 anon_sym_LT,
11408 anon_sym_GT,
11409 ACTIONS(323), 6,
11410 anon_sym_EQ_EQ,
11411 anon_sym_BANG_EQ,
11412 anon_sym_LT_EQ,
11413 anon_sym_GT_EQ,
11414 anon_sym_subset,
11415 anon_sym_superset,
11416 [10590] = 20,
11417 ACTIONS(265), 1,
11418 anon_sym_LBRACK,
11419 ACTIONS(293), 1,
11420 anon_sym_COLON_COLON,
11421 ACTIONS(295), 1,
11422 anon_sym_union,
11423 ACTIONS(297), 1,
11424 anon_sym_diff,
11425 ACTIONS(299), 1,
11426 anon_sym_symdiff,
11427 ACTIONS(301), 1,
11428 anon_sym_intersect,
11429 ACTIONS(303), 1,
11430 anon_sym_DOT_DOT,
11431 ACTIONS(307), 1,
11432 anon_sym_PLUS_PLUS,
11433 ACTIONS(311), 1,
11434 anon_sym_SLASH,
11435 ACTIONS(313), 1,
11436 anon_sym_CARET,
11437 ACTIONS(319), 1,
11438 anon_sym_LT_DASH,
11439 ACTIONS(321), 1,
11440 anon_sym_SLASH_BSLASH,
11441 ACTIONS(611), 1,
11442 anon_sym_RPAREN,
11443 ACTIONS(3), 2,
11444 sym_line_comment,
11445 sym_block_comment,
11446 ACTIONS(305), 2,
11447 anon_sym_PLUS,
11448 anon_sym_DASH,
11449 ACTIONS(317), 2,
11450 anon_sym_DASH_GT,
11451 anon_sym_xor,
11452 ACTIONS(337), 2,
11453 anon_sym_LT_DASH_GT,
11454 anon_sym_BSLASH_SLASH,
11455 ACTIONS(309), 3,
11456 anon_sym_STAR,
11457 anon_sym_div,
11458 anon_sym_mod,
11459 ACTIONS(315), 4,
11460 anon_sym_EQ,
11461 anon_sym_in,
11462 anon_sym_LT,
11463 anon_sym_GT,
11464 ACTIONS(323), 6,
11465 anon_sym_EQ_EQ,
11466 anon_sym_BANG_EQ,
11467 anon_sym_LT_EQ,
11468 anon_sym_GT_EQ,
11469 anon_sym_subset,
11470 anon_sym_superset,
11471 [10665] = 15,
11472 ACTIONS(15), 1,
11473 anon_sym_LBRACE,
11474 ACTIONS(27), 1,
11475 anon_sym_LPAREN,
11476 ACTIONS(29), 1,
11477 anon_sym_LBRACK,
11478 ACTIONS(31), 1,
11479 anon_sym_if,
11480 ACTIONS(35), 1,
11481 anon_sym_let,
11482 ACTIONS(37), 1,
11483 anon_sym_not,
11484 ACTIONS(39), 1,
11485 anon_sym_DQUOTE,
11486 ACTIONS(55), 1,
11487 sym_integer_literal,
11488 ACTIONS(192), 1,
11489 sym_identifier,
11490 STATE(169), 1,
11491 sym__expression,
11492 ACTIONS(3), 2,
11493 sym_line_comment,
11494 sym_block_comment,
11495 ACTIONS(33), 2,
11496 anon_sym_DASH,
11497 anon_sym_,
11498 ACTIONS(51), 2,
11499 sym_absent,
11500 sym_float_literal,
11501 ACTIONS(53), 2,
11502 anon_sym_true,
11503 anon_sym_false,
11504 STATE(32), 16,
11505 sym_parenthesised_expression,
11506 sym_array_comprehension,
11507 sym_call,
11508 sym_generator_call,
11509 sym_if_then_else,
11510 sym_indexed_access,
11511 sym_infix_operator,
11512 sym_let_expression,
11513 sym_prefix_operator,
11514 sym_set_comprehension,
11515 sym_string_interpolation,
11516 sym__literal,
11517 sym_array_literal,
11518 sym_boolean_literal,
11519 sym_set_literal,
11520 sym_string_literal,
11521 [10730] = 20,
11522 ACTIONS(265), 1,
11523 anon_sym_LBRACK,
11524 ACTIONS(293), 1,
11525 anon_sym_COLON_COLON,
11526 ACTIONS(295), 1,
11527 anon_sym_union,
11528 ACTIONS(297), 1,
11529 anon_sym_diff,
11530 ACTIONS(299), 1,
11531 anon_sym_symdiff,
11532 ACTIONS(301), 1,
11533 anon_sym_intersect,
11534 ACTIONS(303), 1,
11535 anon_sym_DOT_DOT,
11536 ACTIONS(307), 1,
11537 anon_sym_PLUS_PLUS,
11538 ACTIONS(311), 1,
11539 anon_sym_SLASH,
11540 ACTIONS(313), 1,
11541 anon_sym_CARET,
11542 ACTIONS(319), 1,
11543 anon_sym_LT_DASH,
11544 ACTIONS(321), 1,
11545 anon_sym_SLASH_BSLASH,
11546 ACTIONS(545), 1,
11547 anon_sym_COMMA,
11548 ACTIONS(3), 2,
11549 sym_line_comment,
11550 sym_block_comment,
11551 ACTIONS(305), 2,
11552 anon_sym_PLUS,
11553 anon_sym_DASH,
11554 ACTIONS(317), 2,
11555 anon_sym_DASH_GT,
11556 anon_sym_xor,
11557 ACTIONS(337), 2,
11558 anon_sym_LT_DASH_GT,
11559 anon_sym_BSLASH_SLASH,
11560 ACTIONS(309), 3,
11561 anon_sym_STAR,
11562 anon_sym_div,
11563 anon_sym_mod,
11564 ACTIONS(315), 4,
11565 anon_sym_EQ,
11566 anon_sym_in,
11567 anon_sym_LT,
11568 anon_sym_GT,
11569 ACTIONS(323), 6,
11570 anon_sym_EQ_EQ,
11571 anon_sym_BANG_EQ,
11572 anon_sym_LT_EQ,
11573 anon_sym_GT_EQ,
11574 anon_sym_subset,
11575 anon_sym_superset,
11576 [10805] = 15,
11577 ACTIONS(15), 1,
11578 anon_sym_LBRACE,
11579 ACTIONS(27), 1,
11580 anon_sym_LPAREN,
11581 ACTIONS(29), 1,
11582 anon_sym_LBRACK,
11583 ACTIONS(31), 1,
11584 anon_sym_if,
11585 ACTIONS(35), 1,
11586 anon_sym_let,
11587 ACTIONS(37), 1,
11588 anon_sym_not,
11589 ACTIONS(39), 1,
11590 anon_sym_DQUOTE,
11591 ACTIONS(55), 1,
11592 sym_integer_literal,
11593 ACTIONS(192), 1,
11594 sym_identifier,
11595 STATE(90), 1,
11596 sym__expression,
11597 ACTIONS(3), 2,
11598 sym_line_comment,
11599 sym_block_comment,
11600 ACTIONS(33), 2,
11601 anon_sym_DASH,
11602 anon_sym_,
11603 ACTIONS(51), 2,
11604 sym_absent,
11605 sym_float_literal,
11606 ACTIONS(53), 2,
11607 anon_sym_true,
11608 anon_sym_false,
11609 STATE(32), 16,
11610 sym_parenthesised_expression,
11611 sym_array_comprehension,
11612 sym_call,
11613 sym_generator_call,
11614 sym_if_then_else,
11615 sym_indexed_access,
11616 sym_infix_operator,
11617 sym_let_expression,
11618 sym_prefix_operator,
11619 sym_set_comprehension,
11620 sym_string_interpolation,
11621 sym__literal,
11622 sym_array_literal,
11623 sym_boolean_literal,
11624 sym_set_literal,
11625 sym_string_literal,
11626 [10870] = 15,
11627 ACTIONS(15), 1,
11628 anon_sym_LBRACE,
11629 ACTIONS(27), 1,
11630 anon_sym_LPAREN,
11631 ACTIONS(29), 1,
11632 anon_sym_LBRACK,
11633 ACTIONS(31), 1,
11634 anon_sym_if,
11635 ACTIONS(35), 1,
11636 anon_sym_let,
11637 ACTIONS(37), 1,
11638 anon_sym_not,
11639 ACTIONS(39), 1,
11640 anon_sym_DQUOTE,
11641 ACTIONS(55), 1,
11642 sym_integer_literal,
11643 ACTIONS(192), 1,
11644 sym_identifier,
11645 STATE(106), 1,
11646 sym__expression,
11647 ACTIONS(3), 2,
11648 sym_line_comment,
11649 sym_block_comment,
11650 ACTIONS(33), 2,
11651 anon_sym_DASH,
11652 anon_sym_,
11653 ACTIONS(51), 2,
11654 sym_absent,
11655 sym_float_literal,
11656 ACTIONS(53), 2,
11657 anon_sym_true,
11658 anon_sym_false,
11659 STATE(32), 16,
11660 sym_parenthesised_expression,
11661 sym_array_comprehension,
11662 sym_call,
11663 sym_generator_call,
11664 sym_if_then_else,
11665 sym_indexed_access,
11666 sym_infix_operator,
11667 sym_let_expression,
11668 sym_prefix_operator,
11669 sym_set_comprehension,
11670 sym_string_interpolation,
11671 sym__literal,
11672 sym_array_literal,
11673 sym_boolean_literal,
11674 sym_set_literal,
11675 sym_string_literal,
11676 [10935] = 20,
11677 ACTIONS(265), 1,
11678 anon_sym_LBRACK,
11679 ACTIONS(293), 1,
11680 anon_sym_COLON_COLON,
11681 ACTIONS(295), 1,
11682 anon_sym_union,
11683 ACTIONS(297), 1,
11684 anon_sym_diff,
11685 ACTIONS(299), 1,
11686 anon_sym_symdiff,
11687 ACTIONS(301), 1,
11688 anon_sym_intersect,
11689 ACTIONS(303), 1,
11690 anon_sym_DOT_DOT,
11691 ACTIONS(307), 1,
11692 anon_sym_PLUS_PLUS,
11693 ACTIONS(311), 1,
11694 anon_sym_SLASH,
11695 ACTIONS(313), 1,
11696 anon_sym_CARET,
11697 ACTIONS(319), 1,
11698 anon_sym_LT_DASH,
11699 ACTIONS(321), 1,
11700 anon_sym_SLASH_BSLASH,
11701 ACTIONS(613), 1,
11702 anon_sym_RPAREN,
11703 ACTIONS(3), 2,
11704 sym_line_comment,
11705 sym_block_comment,
11706 ACTIONS(305), 2,
11707 anon_sym_PLUS,
11708 anon_sym_DASH,
11709 ACTIONS(317), 2,
11710 anon_sym_DASH_GT,
11711 anon_sym_xor,
11712 ACTIONS(337), 2,
11713 anon_sym_LT_DASH_GT,
11714 anon_sym_BSLASH_SLASH,
11715 ACTIONS(309), 3,
11716 anon_sym_STAR,
11717 anon_sym_div,
11718 anon_sym_mod,
11719 ACTIONS(315), 4,
11720 anon_sym_EQ,
11721 anon_sym_in,
11722 anon_sym_LT,
11723 anon_sym_GT,
11724 ACTIONS(323), 6,
11725 anon_sym_EQ_EQ,
11726 anon_sym_BANG_EQ,
11727 anon_sym_LT_EQ,
11728 anon_sym_GT_EQ,
11729 anon_sym_subset,
11730 anon_sym_superset,
11731 [11010] = 15,
11732 ACTIONS(15), 1,
11733 anon_sym_LBRACE,
11734 ACTIONS(27), 1,
11735 anon_sym_LPAREN,
11736 ACTIONS(29), 1,
11737 anon_sym_LBRACK,
11738 ACTIONS(31), 1,
11739 anon_sym_if,
11740 ACTIONS(35), 1,
11741 anon_sym_let,
11742 ACTIONS(37), 1,
11743 anon_sym_not,
11744 ACTIONS(39), 1,
11745 anon_sym_DQUOTE,
11746 ACTIONS(55), 1,
11747 sym_integer_literal,
11748 ACTIONS(192), 1,
11749 sym_identifier,
11750 STATE(105), 1,
11751 sym__expression,
11752 ACTIONS(3), 2,
11753 sym_line_comment,
11754 sym_block_comment,
11755 ACTIONS(33), 2,
11756 anon_sym_DASH,
11757 anon_sym_,
11758 ACTIONS(51), 2,
11759 sym_absent,
11760 sym_float_literal,
11761 ACTIONS(53), 2,
11762 anon_sym_true,
11763 anon_sym_false,
11764 STATE(32), 16,
11765 sym_parenthesised_expression,
11766 sym_array_comprehension,
11767 sym_call,
11768 sym_generator_call,
11769 sym_if_then_else,
11770 sym_indexed_access,
11771 sym_infix_operator,
11772 sym_let_expression,
11773 sym_prefix_operator,
11774 sym_set_comprehension,
11775 sym_string_interpolation,
11776 sym__literal,
11777 sym_array_literal,
11778 sym_boolean_literal,
11779 sym_set_literal,
11780 sym_string_literal,
11781 [11075] = 15,
11782 ACTIONS(15), 1,
11783 anon_sym_LBRACE,
11784 ACTIONS(27), 1,
11785 anon_sym_LPAREN,
11786 ACTIONS(29), 1,
11787 anon_sym_LBRACK,
11788 ACTIONS(31), 1,
11789 anon_sym_if,
11790 ACTIONS(35), 1,
11791 anon_sym_let,
11792 ACTIONS(37), 1,
11793 anon_sym_not,
11794 ACTIONS(39), 1,
11795 anon_sym_DQUOTE,
11796 ACTIONS(55), 1,
11797 sym_integer_literal,
11798 ACTIONS(192), 1,
11799 sym_identifier,
11800 STATE(110), 1,
11801 sym__expression,
11802 ACTIONS(3), 2,
11803 sym_line_comment,
11804 sym_block_comment,
11805 ACTIONS(33), 2,
11806 anon_sym_DASH,
11807 anon_sym_,
11808 ACTIONS(51), 2,
11809 sym_absent,
11810 sym_float_literal,
11811 ACTIONS(53), 2,
11812 anon_sym_true,
11813 anon_sym_false,
11814 STATE(32), 16,
11815 sym_parenthesised_expression,
11816 sym_array_comprehension,
11817 sym_call,
11818 sym_generator_call,
11819 sym_if_then_else,
11820 sym_indexed_access,
11821 sym_infix_operator,
11822 sym_let_expression,
11823 sym_prefix_operator,
11824 sym_set_comprehension,
11825 sym_string_interpolation,
11826 sym__literal,
11827 sym_array_literal,
11828 sym_boolean_literal,
11829 sym_set_literal,
11830 sym_string_literal,
11831 [11140] = 15,
11832 ACTIONS(15), 1,
11833 anon_sym_LBRACE,
11834 ACTIONS(27), 1,
11835 anon_sym_LPAREN,
11836 ACTIONS(29), 1,
11837 anon_sym_LBRACK,
11838 ACTIONS(31), 1,
11839 anon_sym_if,
11840 ACTIONS(35), 1,
11841 anon_sym_let,
11842 ACTIONS(37), 1,
11843 anon_sym_not,
11844 ACTIONS(39), 1,
11845 anon_sym_DQUOTE,
11846 ACTIONS(55), 1,
11847 sym_integer_literal,
11848 ACTIONS(192), 1,
11849 sym_identifier,
11850 STATE(34), 1,
11851 sym__expression,
11852 ACTIONS(3), 2,
11853 sym_line_comment,
11854 sym_block_comment,
11855 ACTIONS(33), 2,
11856 anon_sym_DASH,
11857 anon_sym_,
11858 ACTIONS(51), 2,
11859 sym_absent,
11860 sym_float_literal,
11861 ACTIONS(53), 2,
11862 anon_sym_true,
11863 anon_sym_false,
11864 STATE(32), 16,
11865 sym_parenthesised_expression,
11866 sym_array_comprehension,
11867 sym_call,
11868 sym_generator_call,
11869 sym_if_then_else,
11870 sym_indexed_access,
11871 sym_infix_operator,
11872 sym_let_expression,
11873 sym_prefix_operator,
11874 sym_set_comprehension,
11875 sym_string_interpolation,
11876 sym__literal,
11877 sym_array_literal,
11878 sym_boolean_literal,
11879 sym_set_literal,
11880 sym_string_literal,
11881 [11205] = 15,
11882 ACTIONS(15), 1,
11883 anon_sym_LBRACE,
11884 ACTIONS(27), 1,
11885 anon_sym_LPAREN,
11886 ACTIONS(29), 1,
11887 anon_sym_LBRACK,
11888 ACTIONS(31), 1,
11889 anon_sym_if,
11890 ACTIONS(35), 1,
11891 anon_sym_let,
11892 ACTIONS(37), 1,
11893 anon_sym_not,
11894 ACTIONS(39), 1,
11895 anon_sym_DQUOTE,
11896 ACTIONS(55), 1,
11897 sym_integer_literal,
11898 ACTIONS(192), 1,
11899 sym_identifier,
11900 STATE(116), 1,
11901 sym__expression,
11902 ACTIONS(3), 2,
11903 sym_line_comment,
11904 sym_block_comment,
11905 ACTIONS(33), 2,
11906 anon_sym_DASH,
11907 anon_sym_,
11908 ACTIONS(51), 2,
11909 sym_absent,
11910 sym_float_literal,
11911 ACTIONS(53), 2,
11912 anon_sym_true,
11913 anon_sym_false,
11914 STATE(32), 16,
11915 sym_parenthesised_expression,
11916 sym_array_comprehension,
11917 sym_call,
11918 sym_generator_call,
11919 sym_if_then_else,
11920 sym_indexed_access,
11921 sym_infix_operator,
11922 sym_let_expression,
11923 sym_prefix_operator,
11924 sym_set_comprehension,
11925 sym_string_interpolation,
11926 sym__literal,
11927 sym_array_literal,
11928 sym_boolean_literal,
11929 sym_set_literal,
11930 sym_string_literal,
11931 [11270] = 15,
11932 ACTIONS(15), 1,
11933 anon_sym_LBRACE,
11934 ACTIONS(27), 1,
11935 anon_sym_LPAREN,
11936 ACTIONS(29), 1,
11937 anon_sym_LBRACK,
11938 ACTIONS(31), 1,
11939 anon_sym_if,
11940 ACTIONS(35), 1,
11941 anon_sym_let,
11942 ACTIONS(37), 1,
11943 anon_sym_not,
11944 ACTIONS(39), 1,
11945 anon_sym_DQUOTE,
11946 ACTIONS(55), 1,
11947 sym_integer_literal,
11948 ACTIONS(192), 1,
11949 sym_identifier,
11950 STATE(97), 1,
11951 sym__expression,
11952 ACTIONS(3), 2,
11953 sym_line_comment,
11954 sym_block_comment,
11955 ACTIONS(33), 2,
11956 anon_sym_DASH,
11957 anon_sym_,
11958 ACTIONS(51), 2,
11959 sym_absent,
11960 sym_float_literal,
11961 ACTIONS(53), 2,
11962 anon_sym_true,
11963 anon_sym_false,
11964 STATE(32), 16,
11965 sym_parenthesised_expression,
11966 sym_array_comprehension,
11967 sym_call,
11968 sym_generator_call,
11969 sym_if_then_else,
11970 sym_indexed_access,
11971 sym_infix_operator,
11972 sym_let_expression,
11973 sym_prefix_operator,
11974 sym_set_comprehension,
11975 sym_string_interpolation,
11976 sym__literal,
11977 sym_array_literal,
11978 sym_boolean_literal,
11979 sym_set_literal,
11980 sym_string_literal,
11981 [11335] = 15,
11982 ACTIONS(15), 1,
11983 anon_sym_LBRACE,
11984 ACTIONS(27), 1,
11985 anon_sym_LPAREN,
11986 ACTIONS(29), 1,
11987 anon_sym_LBRACK,
11988 ACTIONS(31), 1,
11989 anon_sym_if,
11990 ACTIONS(35), 1,
11991 anon_sym_let,
11992 ACTIONS(37), 1,
11993 anon_sym_not,
11994 ACTIONS(39), 1,
11995 anon_sym_DQUOTE,
11996 ACTIONS(55), 1,
11997 sym_integer_literal,
11998 ACTIONS(192), 1,
11999 sym_identifier,
12000 STATE(78), 1,
12001 sym__expression,
12002 ACTIONS(3), 2,
12003 sym_line_comment,
12004 sym_block_comment,
12005 ACTIONS(33), 2,
12006 anon_sym_DASH,
12007 anon_sym_,
12008 ACTIONS(51), 2,
12009 sym_absent,
12010 sym_float_literal,
12011 ACTIONS(53), 2,
12012 anon_sym_true,
12013 anon_sym_false,
12014 STATE(32), 16,
12015 sym_parenthesised_expression,
12016 sym_array_comprehension,
12017 sym_call,
12018 sym_generator_call,
12019 sym_if_then_else,
12020 sym_indexed_access,
12021 sym_infix_operator,
12022 sym_let_expression,
12023 sym_prefix_operator,
12024 sym_set_comprehension,
12025 sym_string_interpolation,
12026 sym__literal,
12027 sym_array_literal,
12028 sym_boolean_literal,
12029 sym_set_literal,
12030 sym_string_literal,
12031 [11400] = 15,
12032 ACTIONS(15), 1,
12033 anon_sym_LBRACE,
12034 ACTIONS(27), 1,
12035 anon_sym_LPAREN,
12036 ACTIONS(29), 1,
12037 anon_sym_LBRACK,
12038 ACTIONS(31), 1,
12039 anon_sym_if,
12040 ACTIONS(35), 1,
12041 anon_sym_let,
12042 ACTIONS(37), 1,
12043 anon_sym_not,
12044 ACTIONS(39), 1,
12045 anon_sym_DQUOTE,
12046 ACTIONS(55), 1,
12047 sym_integer_literal,
12048 ACTIONS(192), 1,
12049 sym_identifier,
12050 STATE(75), 1,
12051 sym__expression,
12052 ACTIONS(3), 2,
12053 sym_line_comment,
12054 sym_block_comment,
12055 ACTIONS(33), 2,
12056 anon_sym_DASH,
12057 anon_sym_,
12058 ACTIONS(51), 2,
12059 sym_absent,
12060 sym_float_literal,
12061 ACTIONS(53), 2,
12062 anon_sym_true,
12063 anon_sym_false,
12064 STATE(32), 16,
12065 sym_parenthesised_expression,
12066 sym_array_comprehension,
12067 sym_call,
12068 sym_generator_call,
12069 sym_if_then_else,
12070 sym_indexed_access,
12071 sym_infix_operator,
12072 sym_let_expression,
12073 sym_prefix_operator,
12074 sym_set_comprehension,
12075 sym_string_interpolation,
12076 sym__literal,
12077 sym_array_literal,
12078 sym_boolean_literal,
12079 sym_set_literal,
12080 sym_string_literal,
12081 [11465] = 20,
12082 ACTIONS(265), 1,
12083 anon_sym_LBRACK,
12084 ACTIONS(293), 1,
12085 anon_sym_COLON_COLON,
12086 ACTIONS(295), 1,
12087 anon_sym_union,
12088 ACTIONS(297), 1,
12089 anon_sym_diff,
12090 ACTIONS(299), 1,
12091 anon_sym_symdiff,
12092 ACTIONS(301), 1,
12093 anon_sym_intersect,
12094 ACTIONS(303), 1,
12095 anon_sym_DOT_DOT,
12096 ACTIONS(307), 1,
12097 anon_sym_PLUS_PLUS,
12098 ACTIONS(311), 1,
12099 anon_sym_SLASH,
12100 ACTIONS(313), 1,
12101 anon_sym_CARET,
12102 ACTIONS(319), 1,
12103 anon_sym_LT_DASH,
12104 ACTIONS(321), 1,
12105 anon_sym_SLASH_BSLASH,
12106 ACTIONS(615), 1,
12107 anon_sym_endif,
12108 ACTIONS(3), 2,
12109 sym_line_comment,
12110 sym_block_comment,
12111 ACTIONS(305), 2,
12112 anon_sym_PLUS,
12113 anon_sym_DASH,
12114 ACTIONS(317), 2,
12115 anon_sym_DASH_GT,
12116 anon_sym_xor,
12117 ACTIONS(337), 2,
12118 anon_sym_LT_DASH_GT,
12119 anon_sym_BSLASH_SLASH,
12120 ACTIONS(309), 3,
12121 anon_sym_STAR,
12122 anon_sym_div,
12123 anon_sym_mod,
12124 ACTIONS(315), 4,
12125 anon_sym_EQ,
12126 anon_sym_in,
12127 anon_sym_LT,
12128 anon_sym_GT,
12129 ACTIONS(323), 6,
12130 anon_sym_EQ_EQ,
12131 anon_sym_BANG_EQ,
12132 anon_sym_LT_EQ,
12133 anon_sym_GT_EQ,
12134 anon_sym_subset,
12135 anon_sym_superset,
12136 [11540] = 20,
12137 ACTIONS(265), 1,
12138 anon_sym_LBRACK,
12139 ACTIONS(293), 1,
12140 anon_sym_COLON_COLON,
12141 ACTIONS(295), 1,
12142 anon_sym_union,
12143 ACTIONS(297), 1,
12144 anon_sym_diff,
12145 ACTIONS(299), 1,
12146 anon_sym_symdiff,
12147 ACTIONS(301), 1,
12148 anon_sym_intersect,
12149 ACTIONS(303), 1,
12150 anon_sym_DOT_DOT,
12151 ACTIONS(307), 1,
12152 anon_sym_PLUS_PLUS,
12153 ACTIONS(311), 1,
12154 anon_sym_SLASH,
12155 ACTIONS(313), 1,
12156 anon_sym_CARET,
12157 ACTIONS(319), 1,
12158 anon_sym_LT_DASH,
12159 ACTIONS(321), 1,
12160 anon_sym_SLASH_BSLASH,
12161 ACTIONS(617), 1,
12162 anon_sym_RPAREN,
12163 ACTIONS(3), 2,
12164 sym_line_comment,
12165 sym_block_comment,
12166 ACTIONS(305), 2,
12167 anon_sym_PLUS,
12168 anon_sym_DASH,
12169 ACTIONS(317), 2,
12170 anon_sym_DASH_GT,
12171 anon_sym_xor,
12172 ACTIONS(337), 2,
12173 anon_sym_LT_DASH_GT,
12174 anon_sym_BSLASH_SLASH,
12175 ACTIONS(309), 3,
12176 anon_sym_STAR,
12177 anon_sym_div,
12178 anon_sym_mod,
12179 ACTIONS(315), 4,
12180 anon_sym_EQ,
12181 anon_sym_in,
12182 anon_sym_LT,
12183 anon_sym_GT,
12184 ACTIONS(323), 6,
12185 anon_sym_EQ_EQ,
12186 anon_sym_BANG_EQ,
12187 anon_sym_LT_EQ,
12188 anon_sym_GT_EQ,
12189 anon_sym_subset,
12190 anon_sym_superset,
12191 [11615] = 15,
12192 ACTIONS(15), 1,
12193 anon_sym_LBRACE,
12194 ACTIONS(27), 1,
12195 anon_sym_LPAREN,
12196 ACTIONS(29), 1,
12197 anon_sym_LBRACK,
12198 ACTIONS(31), 1,
12199 anon_sym_if,
12200 ACTIONS(35), 1,
12201 anon_sym_let,
12202 ACTIONS(37), 1,
12203 anon_sym_not,
12204 ACTIONS(39), 1,
12205 anon_sym_DQUOTE,
12206 ACTIONS(55), 1,
12207 sym_integer_literal,
12208 ACTIONS(192), 1,
12209 sym_identifier,
12210 STATE(155), 1,
12211 sym__expression,
12212 ACTIONS(3), 2,
12213 sym_line_comment,
12214 sym_block_comment,
12215 ACTIONS(33), 2,
12216 anon_sym_DASH,
12217 anon_sym_,
12218 ACTIONS(51), 2,
12219 sym_absent,
12220 sym_float_literal,
12221 ACTIONS(53), 2,
12222 anon_sym_true,
12223 anon_sym_false,
12224 STATE(32), 16,
12225 sym_parenthesised_expression,
12226 sym_array_comprehension,
12227 sym_call,
12228 sym_generator_call,
12229 sym_if_then_else,
12230 sym_indexed_access,
12231 sym_infix_operator,
12232 sym_let_expression,
12233 sym_prefix_operator,
12234 sym_set_comprehension,
12235 sym_string_interpolation,
12236 sym__literal,
12237 sym_array_literal,
12238 sym_boolean_literal,
12239 sym_set_literal,
12240 sym_string_literal,
12241 [11680] = 15,
12242 ACTIONS(15), 1,
12243 anon_sym_LBRACE,
12244 ACTIONS(27), 1,
12245 anon_sym_LPAREN,
12246 ACTIONS(29), 1,
12247 anon_sym_LBRACK,
12248 ACTIONS(31), 1,
12249 anon_sym_if,
12250 ACTIONS(35), 1,
12251 anon_sym_let,
12252 ACTIONS(37), 1,
12253 anon_sym_not,
12254 ACTIONS(39), 1,
12255 anon_sym_DQUOTE,
12256 ACTIONS(55), 1,
12257 sym_integer_literal,
12258 ACTIONS(192), 1,
12259 sym_identifier,
12260 STATE(54), 1,
12261 sym__expression,
12262 ACTIONS(3), 2,
12263 sym_line_comment,
12264 sym_block_comment,
12265 ACTIONS(33), 2,
12266 anon_sym_DASH,
12267 anon_sym_,
12268 ACTIONS(51), 2,
12269 sym_absent,
12270 sym_float_literal,
12271 ACTIONS(53), 2,
12272 anon_sym_true,
12273 anon_sym_false,
12274 STATE(32), 16,
12275 sym_parenthesised_expression,
12276 sym_array_comprehension,
12277 sym_call,
12278 sym_generator_call,
12279 sym_if_then_else,
12280 sym_indexed_access,
12281 sym_infix_operator,
12282 sym_let_expression,
12283 sym_prefix_operator,
12284 sym_set_comprehension,
12285 sym_string_interpolation,
12286 sym__literal,
12287 sym_array_literal,
12288 sym_boolean_literal,
12289 sym_set_literal,
12290 sym_string_literal,
12291 [11745] = 3,
12292 ACTIONS(3), 2,
12293 sym_line_comment,
12294 sym_block_comment,
12295 ACTIONS(145), 9,
12296 anon_sym_LBRACE,
12297 anon_sym_RBRACE,
12298 anon_sym_LPAREN,
12299 anon_sym_LBRACK,
12300 anon_sym_DASH,
12301 anon_sym_,
12302 anon_sym_DQUOTE,
12303 sym_absent,
12304 sym_float_literal,
12305 ACTIONS(619), 18,
12306 anon_sym_constraint,
12307 anon_sym_if,
12308 anon_sym_let,
12309 anon_sym_not,
12310 anon_sym_array,
12311 anon_sym_var,
12312 anon_sym_par,
12313 anon_sym_opt,
12314 anon_sym_set,
12315 anon_sym_ann,
12316 anon_sym_bool,
12317 anon_sym_float,
12318 anon_sym_int,
12319 anon_sym_string,
12320 anon_sym_true,
12321 anon_sym_false,
12322 sym_integer_literal,
12323 sym_identifier,
12324 [11781] = 3,
12325 ACTIONS(3), 2,
12326 sym_line_comment,
12327 sym_block_comment,
12328 ACTIONS(207), 9,
12329 anon_sym_LBRACE,
12330 anon_sym_LPAREN,
12331 anon_sym_RPAREN,
12332 anon_sym_LBRACK,
12333 anon_sym_DASH,
12334 anon_sym_,
12335 anon_sym_DQUOTE,
12336 sym_absent,
12337 sym_float_literal,
12338 ACTIONS(621), 17,
12339 anon_sym_if,
12340 anon_sym_let,
12341 anon_sym_not,
12342 anon_sym_array,
12343 anon_sym_var,
12344 anon_sym_par,
12345 anon_sym_opt,
12346 anon_sym_set,
12347 anon_sym_ann,
12348 anon_sym_bool,
12349 anon_sym_float,
12350 anon_sym_int,
12351 anon_sym_string,
12352 anon_sym_true,
12353 anon_sym_false,
12354 sym_integer_literal,
12355 sym_identifier,
12356 [11816] = 3,
12357 ACTIONS(3), 2,
12358 sym_line_comment,
12359 sym_block_comment,
12360 ACTIONS(625), 9,
12361 anon_sym_LBRACE,
12362 anon_sym_LPAREN,
12363 anon_sym_RPAREN,
12364 anon_sym_LBRACK,
12365 anon_sym_DASH,
12366 anon_sym_,
12367 anon_sym_DQUOTE,
12368 sym_absent,
12369 sym_float_literal,
12370 ACTIONS(623), 17,
12371 anon_sym_if,
12372 anon_sym_let,
12373 anon_sym_not,
12374 anon_sym_array,
12375 anon_sym_var,
12376 anon_sym_par,
12377 anon_sym_opt,
12378 anon_sym_set,
12379 anon_sym_ann,
12380 anon_sym_bool,
12381 anon_sym_float,
12382 anon_sym_int,
12383 anon_sym_string,
12384 anon_sym_true,
12385 anon_sym_false,
12386 sym_integer_literal,
12387 sym_identifier,
12388 [11851] = 3,
12389 ACTIONS(3), 2,
12390 sym_line_comment,
12391 sym_block_comment,
12392 ACTIONS(627), 7,
12393 anon_sym_if,
12394 anon_sym_let,
12395 anon_sym_not,
12396 anon_sym_true,
12397 anon_sym_false,
12398 sym_integer_literal,
12399 sym_identifier,
12400 ACTIONS(455), 11,
12401 anon_sym_LBRACE,
12402 anon_sym_RBRACE,
12403 anon_sym_LPAREN,
12404 anon_sym_RPAREN,
12405 anon_sym_LBRACK,
12406 anon_sym_RBRACK,
12407 anon_sym_DASH,
12408 anon_sym_,
12409 anon_sym_DQUOTE,
12410 sym_absent,
12411 sym_float_literal,
12412 [11878] = 4,
12413 ACTIONS(629), 1,
12414 anon_sym_COLON_COLON,
12415 STATE(176), 1,
12416 aux_sym__annotations,
12417 ACTIONS(3), 2,
12418 sym_line_comment,
12419 sym_block_comment,
12420 ACTIONS(511), 5,
12421 ts_builtin_sym_end,
12422 anon_sym_SEMI,
12423 anon_sym_EQ,
12424 anon_sym_COMMA,
12425 anon_sym_RBRACE,
12426 [11896] = 5,
12427 ACTIONS(634), 1,
12428 anon_sym_EQ,
12429 ACTIONS(636), 1,
12430 anon_sym_COLON_COLON,
12431 STATE(179), 1,
12432 aux_sym__annotations,
12433 ACTIONS(3), 2,
12434 sym_line_comment,
12435 sym_block_comment,
12436 ACTIONS(632), 4,
12437 ts_builtin_sym_end,
12438 anon_sym_SEMI,
12439 anon_sym_COMMA,
12440 anon_sym_RBRACE,
12441 [11916] = 8,
12442 ACTIONS(638), 1,
12443 anon_sym_DQUOTE,
12444 ACTIONS(640), 1,
12445 anon_sym_BSLASH_LPAREN,
12446 ACTIONS(642), 1,
12447 aux_sym_string_content_token1,
12448 ACTIONS(644), 1,
12449 sym_escape_sequence,
12450 STATE(186), 1,
12451 aux_sym_string_content_repeat1,
12452 STATE(220), 1,
12453 sym_string_content,
12454 STATE(221), 1,
12455 aux_sym_string_interpolation_repeat1,
12456 ACTIONS(646), 2,
12457 sym_line_comment,
12458 sym_block_comment,
12459 [11942] = 5,
12460 ACTIONS(636), 1,
12461 anon_sym_COLON_COLON,
12462 ACTIONS(650), 1,
12463 anon_sym_EQ,
12464 STATE(176), 1,
12465 aux_sym__annotations,
12466 ACTIONS(3), 2,
12467 sym_line_comment,
12468 sym_block_comment,
12469 ACTIONS(648), 4,
12470 ts_builtin_sym_end,
12471 anon_sym_SEMI,
12472 anon_sym_COMMA,
12473 anon_sym_RBRACE,
12474 [11962] = 6,
12475 ACTIONS(642), 1,
12476 aux_sym_string_content_token1,
12477 ACTIONS(644), 1,
12478 sym_escape_sequence,
12479 STATE(186), 1,
12480 aux_sym_string_content_repeat1,
12481 STATE(248), 1,
12482 sym_string_content,
12483 ACTIONS(646), 2,
12484 sym_line_comment,
12485 sym_block_comment,
12486 ACTIONS(652), 2,
12487 anon_sym_DQUOTE,
12488 anon_sym_BSLASH_LPAREN,
12489 [11983] = 5,
12490 ACTIONS(636), 1,
12491 anon_sym_COLON_COLON,
12492 ACTIONS(656), 1,
12493 anon_sym_EQ,
12494 STATE(190), 1,
12495 aux_sym__annotations,
12496 ACTIONS(3), 2,
12497 sym_line_comment,
12498 sym_block_comment,
12499 ACTIONS(654), 2,
12500 ts_builtin_sym_end,
12501 anon_sym_SEMI,
12502 [12001] = 5,
12503 ACTIONS(636), 1,
12504 anon_sym_COLON_COLON,
12505 ACTIONS(660), 1,
12506 anon_sym_EQ,
12507 STATE(176), 1,
12508 aux_sym__annotations,
12509 ACTIONS(3), 2,
12510 sym_line_comment,
12511 sym_block_comment,
12512 ACTIONS(658), 2,
12513 ts_builtin_sym_end,
12514 anon_sym_SEMI,
12515 [12019] = 5,
12516 ACTIONS(636), 1,
12517 anon_sym_COLON_COLON,
12518 ACTIONS(664), 1,
12519 anon_sym_EQ,
12520 STATE(191), 1,
12521 aux_sym__annotations,
12522 ACTIONS(3), 2,
12523 sym_line_comment,
12524 sym_block_comment,
12525 ACTIONS(662), 2,
12526 ts_builtin_sym_end,
12527 anon_sym_SEMI,
12528 [12037] = 4,
12529 ACTIONS(666), 1,
12530 anon_sym_COMMA,
12531 STATE(184), 1,
12532 aux_sym_array_comprehension_repeat1,
12533 ACTIONS(3), 2,
12534 sym_line_comment,
12535 sym_block_comment,
12536 ACTIONS(669), 3,
12537 anon_sym_RBRACE,
12538 anon_sym_RPAREN,
12539 anon_sym_RBRACK,
12540 [12053] = 5,
12541 ACTIONS(673), 1,
12542 aux_sym_string_content_token1,
12543 ACTIONS(676), 1,
12544 sym_escape_sequence,
12545 STATE(185), 1,
12546 aux_sym_string_content_repeat1,
12547 ACTIONS(646), 2,
12548 sym_line_comment,
12549 sym_block_comment,
12550 ACTIONS(671), 2,
12551 anon_sym_DQUOTE,
12552 anon_sym_BSLASH_LPAREN,
12553 [12071] = 5,
12554 ACTIONS(681), 1,
12555 aux_sym_string_content_token1,
12556 ACTIONS(683), 1,
12557 sym_escape_sequence,
12558 STATE(185), 1,
12559 aux_sym_string_content_repeat1,
12560 ACTIONS(646), 2,
12561 sym_line_comment,
12562 sym_block_comment,
12563 ACTIONS(679), 2,
12564 anon_sym_DQUOTE,
12565 anon_sym_BSLASH_LPAREN,
12566 [12089] = 5,
12567 ACTIONS(638), 1,
12568 anon_sym_DQUOTE,
12569 STATE(205), 1,
12570 aux_sym_string_content_repeat1,
12571 STATE(293), 1,
12572 sym_string_content,
12573 ACTIONS(646), 2,
12574 sym_line_comment,
12575 sym_block_comment,
12576 ACTIONS(685), 2,
12577 aux_sym_string_content_token1,
12578 sym_escape_sequence,
12579 [12107] = 5,
12580 ACTIONS(636), 1,
12581 anon_sym_COLON_COLON,
12582 ACTIONS(689), 1,
12583 anon_sym_EQ,
12584 STATE(182), 1,
12585 aux_sym__annotations,
12586 ACTIONS(3), 2,
12587 sym_line_comment,
12588 sym_block_comment,
12589 ACTIONS(687), 2,
12590 ts_builtin_sym_end,
12591 anon_sym_SEMI,
12592 [12125] = 5,
12593 ACTIONS(693), 1,
12594 anon_sym_EQ,
12595 ACTIONS(695), 1,
12596 anon_sym_LPAREN,
12597 STATE(239), 1,
12598 sym__parameters,
12599 ACTIONS(3), 2,
12600 sym_line_comment,
12601 sym_block_comment,
12602 ACTIONS(691), 2,
12603 ts_builtin_sym_end,
12604 anon_sym_SEMI,
12605 [12143] = 5,
12606 ACTIONS(636), 1,
12607 anon_sym_COLON_COLON,
12608 ACTIONS(699), 1,
12609 anon_sym_EQ,
12610 STATE(176), 1,
12611 aux_sym__annotations,
12612 ACTIONS(3), 2,
12613 sym_line_comment,
12614 sym_block_comment,
12615 ACTIONS(697), 2,
12616 ts_builtin_sym_end,
12617 anon_sym_SEMI,
12618 [12161] = 5,
12619 ACTIONS(636), 1,
12620 anon_sym_COLON_COLON,
12621 ACTIONS(703), 1,
12622 anon_sym_EQ,
12623 STATE(176), 1,
12624 aux_sym__annotations,
12625 ACTIONS(3), 2,
12626 sym_line_comment,
12627 sym_block_comment,
12628 ACTIONS(701), 2,
12629 ts_builtin_sym_end,
12630 anon_sym_SEMI,
12631 [12179] = 2,
12632 ACTIONS(3), 2,
12633 sym_line_comment,
12634 sym_block_comment,
12635 ACTIONS(507), 4,
12636 anon_sym_COLON,
12637 anon_sym_COMMA,
12638 anon_sym_RPAREN,
12639 anon_sym_RBRACK,
12640 [12190] = 2,
12641 ACTIONS(3), 2,
12642 sym_line_comment,
12643 sym_block_comment,
12644 ACTIONS(529), 4,
12645 anon_sym_COLON,
12646 anon_sym_COMMA,
12647 anon_sym_RPAREN,
12648 anon_sym_RBRACK,
12649 [12201] = 2,
12650 ACTIONS(3), 2,
12651 sym_line_comment,
12652 sym_block_comment,
12653 ACTIONS(525), 4,
12654 anon_sym_COLON,
12655 anon_sym_COMMA,
12656 anon_sym_RPAREN,
12657 anon_sym_RBRACK,
12658 [12212] = 2,
12659 ACTIONS(3), 2,
12660 sym_line_comment,
12661 sym_block_comment,
12662 ACTIONS(705), 4,
12663 ts_builtin_sym_end,
12664 anon_sym_SEMI,
12665 anon_sym_EQ,
12666 anon_sym_COLON_COLON,
12667 [12223] = 2,
12668 ACTIONS(3), 2,
12669 sym_line_comment,
12670 sym_block_comment,
12671 ACTIONS(707), 4,
12672 ts_builtin_sym_end,
12673 anon_sym_SEMI,
12674 anon_sym_EQ,
12675 anon_sym_COLON_COLON,
12676 [12234] = 2,
12677 ACTIONS(3), 2,
12678 sym_line_comment,
12679 sym_block_comment,
12680 ACTIONS(515), 4,
12681 anon_sym_COLON,
12682 anon_sym_COMMA,
12683 anon_sym_RPAREN,
12684 anon_sym_RBRACK,
12685 [12245] = 2,
12686 ACTIONS(3), 2,
12687 sym_line_comment,
12688 sym_block_comment,
12689 ACTIONS(709), 4,
12690 ts_builtin_sym_end,
12691 anon_sym_SEMI,
12692 anon_sym_EQ,
12693 anon_sym_COLON_COLON,
12694 [12256] = 2,
12695 ACTIONS(3), 2,
12696 sym_line_comment,
12697 sym_block_comment,
12698 ACTIONS(711), 4,
12699 anon_sym_COLON,
12700 anon_sym_COMMA,
12701 anon_sym_RPAREN,
12702 anon_sym_RBRACK,
12703 [12267] = 4,
12704 ACTIONS(671), 1,
12705 anon_sym_DQUOTE,
12706 STATE(200), 1,
12707 aux_sym_string_content_repeat1,
12708 ACTIONS(646), 2,
12709 sym_line_comment,
12710 sym_block_comment,
12711 ACTIONS(713), 2,
12712 aux_sym_string_content_token1,
12713 sym_escape_sequence,
12714 [12282] = 5,
12715 ACTIONS(716), 1,
12716 anon_sym_elseif,
12717 ACTIONS(719), 1,
12718 anon_sym_else,
12719 ACTIONS(721), 1,
12720 anon_sym_endif,
12721 STATE(201), 1,
12722 aux_sym_if_then_else_repeat1,
12723 ACTIONS(3), 2,
12724 sym_line_comment,
12725 sym_block_comment,
12726 [12299] = 2,
12727 ACTIONS(3), 2,
12728 sym_line_comment,
12729 sym_block_comment,
12730 ACTIONS(533), 4,
12731 anon_sym_COLON,
12732 anon_sym_COMMA,
12733 anon_sym_RPAREN,
12734 anon_sym_RBRACK,
12735 [12310] = 2,
12736 ACTIONS(3), 2,
12737 sym_line_comment,
12738 sym_block_comment,
12739 ACTIONS(669), 4,
12740 anon_sym_COMMA,
12741 anon_sym_RBRACE,
12742 anon_sym_RPAREN,
12743 anon_sym_RBRACK,
12744 [12321] = 2,
12745 ACTIONS(3), 2,
12746 sym_line_comment,
12747 sym_block_comment,
12748 ACTIONS(537), 4,
12749 anon_sym_COLON,
12750 anon_sym_COMMA,
12751 anon_sym_RPAREN,
12752 anon_sym_RBRACK,
12753 [12332] = 4,
12754 ACTIONS(679), 1,
12755 anon_sym_DQUOTE,
12756 STATE(200), 1,
12757 aux_sym_string_content_repeat1,
12758 ACTIONS(646), 2,
12759 sym_line_comment,
12760 sym_block_comment,
12761 ACTIONS(723), 2,
12762 aux_sym_string_content_token1,
12763 sym_escape_sequence,
12764 [12347] = 2,
12765 ACTIONS(3), 2,
12766 sym_line_comment,
12767 sym_block_comment,
12768 ACTIONS(495), 4,
12769 anon_sym_COLON,
12770 anon_sym_COMMA,
12771 anon_sym_RPAREN,
12772 anon_sym_RBRACK,
12773 [12358] = 2,
12774 ACTIONS(3), 2,
12775 sym_line_comment,
12776 sym_block_comment,
12777 ACTIONS(725), 4,
12778 ts_builtin_sym_end,
12779 anon_sym_SEMI,
12780 anon_sym_EQ,
12781 anon_sym_COLON_COLON,
12782 [12369] = 5,
12783 ACTIONS(499), 1,
12784 anon_sym_elseif,
12785 ACTIONS(727), 1,
12786 anon_sym_else,
12787 ACTIONS(729), 1,
12788 anon_sym_endif,
12789 STATE(201), 1,
12790 aux_sym_if_then_else_repeat1,
12791 ACTIONS(3), 2,
12792 sym_line_comment,
12793 sym_block_comment,
12794 [12386] = 2,
12795 ACTIONS(3), 2,
12796 sym_line_comment,
12797 sym_block_comment,
12798 ACTIONS(731), 4,
12799 ts_builtin_sym_end,
12800 anon_sym_SEMI,
12801 anon_sym_EQ,
12802 anon_sym_COLON_COLON,
12803 [12397] = 2,
12804 ACTIONS(3), 2,
12805 sym_line_comment,
12806 sym_block_comment,
12807 ACTIONS(543), 4,
12808 anon_sym_COLON,
12809 anon_sym_COMMA,
12810 anon_sym_RPAREN,
12811 anon_sym_RBRACK,
12812 [12408] = 3,
12813 ACTIONS(735), 1,
12814 anon_sym_RBRACE,
12815 ACTIONS(3), 2,
12816 sym_line_comment,
12817 sym_block_comment,
12818 ACTIONS(733), 2,
12819 anon_sym_SEMI,
12820 anon_sym_COMMA,
12821 [12420] = 2,
12822 ACTIONS(3), 2,
12823 sym_line_comment,
12824 sym_block_comment,
12825 ACTIONS(737), 3,
12826 anon_sym_COLON,
12827 anon_sym_COMMA,
12828 anon_sym_RPAREN,
12829 [12430] = 4,
12830 ACTIONS(251), 1,
12831 anon_sym_RPAREN,
12832 ACTIONS(739), 1,
12833 anon_sym_COLON,
12834 ACTIONS(741), 1,
12835 anon_sym_COMMA,
12836 ACTIONS(3), 2,
12837 sym_line_comment,
12838 sym_block_comment,
12839 [12444] = 4,
12840 ACTIONS(743), 1,
12841 sym_identifier,
12842 ACTIONS(745), 1,
12843 anon_sym_RBRACK,
12844 STATE(203), 1,
12845 sym_generator,
12846 ACTIONS(3), 2,
12847 sym_line_comment,
12848 sym_block_comment,
12849 [12458] = 4,
12850 ACTIONS(745), 1,
12851 anon_sym_RBRACK,
12852 ACTIONS(747), 1,
12853 anon_sym_COMMA,
12854 STATE(184), 1,
12855 aux_sym_array_comprehension_repeat1,
12856 ACTIONS(3), 2,
12857 sym_line_comment,
12858 sym_block_comment,
12859 [12472] = 4,
12860 ACTIONS(749), 1,
12861 anon_sym_COMMA,
12862 ACTIONS(751), 1,
12863 anon_sym_RBRACK,
12864 STATE(215), 1,
12865 aux_sym_array_comprehension_repeat1,
12866 ACTIONS(3), 2,
12867 sym_line_comment,
12868 sym_block_comment,
12869 [12486] = 4,
12870 ACTIONS(753), 1,
12871 anon_sym_COMMA,
12872 ACTIONS(755), 1,
12873 anon_sym_RPAREN,
12874 STATE(222), 1,
12875 aux_sym_array_comprehension_repeat1,
12876 ACTIONS(3), 2,
12877 sym_line_comment,
12878 sym_block_comment,
12879 [12500] = 3,
12880 ACTIONS(757), 1,
12881 anon_sym_satisfy,
12882 ACTIONS(3), 2,
12883 sym_line_comment,
12884 sym_block_comment,
12885 ACTIONS(759), 2,
12886 anon_sym_maximize,
12887 anon_sym_minimize,
12888 [12512] = 4,
12889 ACTIONS(565), 1,
12890 anon_sym_COMMA,
12891 ACTIONS(761), 1,
12892 anon_sym_RBRACK,
12893 STATE(236), 1,
12894 aux_sym_indexed_access_repeat1,
12895 ACTIONS(3), 2,
12896 sym_line_comment,
12897 sym_block_comment,
12898 [12526] = 4,
12899 ACTIONS(763), 1,
12900 anon_sym_DQUOTE,
12901 ACTIONS(765), 1,
12902 anon_sym_BSLASH_LPAREN,
12903 STATE(230), 1,
12904 aux_sym_string_interpolation_repeat1,
12905 ACTIONS(3), 2,
12906 sym_line_comment,
12907 sym_block_comment,
12908 [12540] = 4,
12909 ACTIONS(765), 1,
12910 anon_sym_BSLASH_LPAREN,
12911 ACTIONS(767), 1,
12912 anon_sym_DQUOTE,
12913 STATE(227), 1,
12914 aux_sym_string_interpolation_repeat1,
12915 ACTIONS(3), 2,
12916 sym_line_comment,
12917 sym_block_comment,
12918 [12554] = 4,
12919 ACTIONS(769), 1,
12920 anon_sym_COMMA,
12921 ACTIONS(771), 1,
12922 anon_sym_RPAREN,
12923 STATE(184), 1,
12924 aux_sym_array_comprehension_repeat1,
12925 ACTIONS(3), 2,
12926 sym_line_comment,
12927 sym_block_comment,
12928 [12568] = 4,
12929 ACTIONS(773), 1,
12930 anon_sym_COMMA,
12931 ACTIONS(775), 1,
12932 anon_sym_RBRACK,
12933 STATE(242), 1,
12934 aux_sym_array_type_repeat1,
12935 ACTIONS(3), 2,
12936 sym_line_comment,
12937 sym_block_comment,
12938 [12582] = 4,
12939 ACTIONS(777), 1,
12940 anon_sym_COMMA,
12941 ACTIONS(780), 1,
12942 anon_sym_RBRACK,
12943 STATE(224), 1,
12944 aux_sym_array_type_repeat1,
12945 ACTIONS(3), 2,
12946 sym_line_comment,
12947 sym_block_comment,
12948 [12596] = 2,
12949 ACTIONS(3), 2,
12950 sym_line_comment,
12951 sym_block_comment,
12952 ACTIONS(782), 3,
12953 anon_sym_COLON,
12954 anon_sym_COMMA,
12955 anon_sym_RPAREN,
12956 [12606] = 4,
12957 ACTIONS(784), 1,
12958 anon_sym_COMMA,
12959 ACTIONS(786), 1,
12960 anon_sym_RBRACE,
12961 STATE(184), 1,
12962 aux_sym_array_comprehension_repeat1,
12963 ACTIONS(3), 2,
12964 sym_line_comment,
12965 sym_block_comment,
12966 [12620] = 4,
12967 ACTIONS(788), 1,
12968 anon_sym_DQUOTE,
12969 ACTIONS(790), 1,
12970 anon_sym_BSLASH_LPAREN,
12971 STATE(227), 1,
12972 aux_sym_string_interpolation_repeat1,
12973 ACTIONS(3), 2,
12974 sym_line_comment,
12975 sym_block_comment,
12976 [12634] = 4,
12977 ACTIONS(793), 1,
12978 sym_identifier,
12979 ACTIONS(795), 1,
12980 anon_sym_RBRACE,
12981 STATE(237), 1,
12982 aux_sym_enumeration_repeat1,
12983 ACTIONS(3), 2,
12984 sym_line_comment,
12985 sym_block_comment,
12986 [12648] = 2,
12987 ACTIONS(3), 2,
12988 sym_line_comment,
12989 sym_block_comment,
12990 ACTIONS(797), 3,
12991 anon_sym_COLON,
12992 anon_sym_COMMA,
12993 anon_sym_RPAREN,
12994 [12658] = 4,
12995 ACTIONS(765), 1,
12996 anon_sym_BSLASH_LPAREN,
12997 ACTIONS(799), 1,
12998 anon_sym_DQUOTE,
12999 STATE(227), 1,
13000 aux_sym_string_interpolation_repeat1,
13001 ACTIONS(3), 2,
13002 sym_line_comment,
13003 sym_block_comment,
13004 [12672] = 4,
13005 ACTIONS(743), 1,
13006 sym_identifier,
13007 ACTIONS(801), 1,
13008 anon_sym_RPAREN,
13009 STATE(203), 1,
13010 sym_generator,
13011 ACTIONS(3), 2,
13012 sym_line_comment,
13013 sym_block_comment,
13014 [12686] = 4,
13015 ACTIONS(743), 1,
13016 sym_identifier,
13017 ACTIONS(771), 1,
13018 anon_sym_RPAREN,
13019 STATE(203), 1,
13020 sym_generator,
13021 ACTIONS(3), 2,
13022 sym_line_comment,
13023 sym_block_comment,
13024 [12700] = 3,
13025 ACTIONS(194), 1,
13026 anon_sym_RBRACE,
13027 ACTIONS(3), 2,
13028 sym_line_comment,
13029 sym_block_comment,
13030 ACTIONS(733), 2,
13031 anon_sym_SEMI,
13032 anon_sym_COMMA,
13033 [12712] = 4,
13034 ACTIONS(743), 1,
13035 sym_identifier,
13036 ACTIONS(786), 1,
13037 anon_sym_RBRACE,
13038 STATE(203), 1,
13039 sym_generator,
13040 ACTIONS(3), 2,
13041 sym_line_comment,
13042 sym_block_comment,
13043 [12726] = 4,
13044 ACTIONS(803), 1,
13045 sym_identifier,
13046 ACTIONS(805), 1,
13047 anon_sym_RBRACE,
13048 STATE(245), 1,
13049 aux_sym_enumeration_repeat1,
13050 ACTIONS(3), 2,
13051 sym_line_comment,
13052 sym_block_comment,
13053 [12740] = 4,
13054 ACTIONS(578), 1,
13055 anon_sym_RBRACK,
13056 ACTIONS(807), 1,
13057 anon_sym_COMMA,
13058 STATE(236), 1,
13059 aux_sym_indexed_access_repeat1,
13060 ACTIONS(3), 2,
13061 sym_line_comment,
13062 sym_block_comment,
13063 [12754] = 4,
13064 ACTIONS(810), 1,
13065 sym_identifier,
13066 ACTIONS(812), 1,
13067 anon_sym_RBRACE,
13068 STATE(244), 1,
13069 aux_sym_enumeration_repeat1,
13070 ACTIONS(3), 2,
13071 sym_line_comment,
13072 sym_block_comment,
13073 [12768] = 2,
13074 ACTIONS(3), 2,
13075 sym_line_comment,
13076 sym_block_comment,
13077 ACTIONS(814), 3,
13078 anon_sym_COLON,
13079 anon_sym_COMMA,
13080 anon_sym_RPAREN,
13081 [12778] = 3,
13082 ACTIONS(818), 1,
13083 anon_sym_EQ,
13084 ACTIONS(3), 2,
13085 sym_line_comment,
13086 sym_block_comment,
13087 ACTIONS(816), 2,
13088 ts_builtin_sym_end,
13089 anon_sym_SEMI,
13090 [12790] = 4,
13091 ACTIONS(743), 1,
13092 sym_identifier,
13093 ACTIONS(820), 1,
13094 anon_sym_RBRACK,
13095 STATE(203), 1,
13096 sym_generator,
13097 ACTIONS(3), 2,
13098 sym_line_comment,
13099 sym_block_comment,
13100 [12804] = 4,
13101 ACTIONS(822), 1,
13102 anon_sym_COMMA,
13103 ACTIONS(824), 1,
13104 anon_sym_RBRACE,
13105 STATE(226), 1,
13106 aux_sym_array_comprehension_repeat1,
13107 ACTIONS(3), 2,
13108 sym_line_comment,
13109 sym_block_comment,
13110 [12818] = 4,
13111 ACTIONS(287), 1,
13112 anon_sym_RBRACK,
13113 ACTIONS(826), 1,
13114 anon_sym_COMMA,
13115 STATE(224), 1,
13116 aux_sym_array_type_repeat1,
13117 ACTIONS(3), 2,
13118 sym_line_comment,
13119 sym_block_comment,
13120 [12832] = 4,
13121 ACTIONS(741), 1,
13122 anon_sym_COMMA,
13123 ACTIONS(828), 1,
13124 anon_sym_COLON,
13125 ACTIONS(830), 1,
13126 anon_sym_RPAREN,
13127 ACTIONS(3), 2,
13128 sym_line_comment,
13129 sym_block_comment,
13130 [12846] = 4,
13131 ACTIONS(832), 1,
13132 sym_identifier,
13133 ACTIONS(835), 1,
13134 anon_sym_RBRACE,
13135 STATE(244), 1,
13136 aux_sym_enumeration_repeat1,
13137 ACTIONS(3), 2,
13138 sym_line_comment,
13139 sym_block_comment,
13140 [12860] = 4,
13141 ACTIONS(837), 1,
13142 sym_identifier,
13143 ACTIONS(839), 1,
13144 anon_sym_RBRACE,
13145 STATE(244), 1,
13146 aux_sym_enumeration_repeat1,
13147 ACTIONS(3), 2,
13148 sym_line_comment,
13149 sym_block_comment,
13150 [12874] = 4,
13151 ACTIONS(743), 1,
13152 sym_identifier,
13153 ACTIONS(841), 1,
13154 anon_sym_RBRACE,
13155 STATE(203), 1,
13156 sym_generator,
13157 ACTIONS(3), 2,
13158 sym_line_comment,
13159 sym_block_comment,
13160 [12888] = 3,
13161 ACTIONS(741), 1,
13162 anon_sym_COMMA,
13163 ACTIONS(843), 1,
13164 anon_sym_COLON,
13165 ACTIONS(3), 2,
13166 sym_line_comment,
13167 sym_block_comment,
13168 [12899] = 2,
13169 ACTIONS(3), 2,
13170 sym_line_comment,
13171 sym_block_comment,
13172 ACTIONS(845), 2,
13173 anon_sym_DQUOTE,
13174 anon_sym_BSLASH_LPAREN,
13175 [12908] = 3,
13176 ACTIONS(847), 1,
13177 anon_sym_COMMA,
13178 ACTIONS(849), 1,
13179 anon_sym_RBRACE,
13180 ACTIONS(3), 2,
13181 sym_line_comment,
13182 sym_block_comment,
13183 [12919] = 3,
13184 ACTIONS(851), 1,
13185 anon_sym_DQUOTE,
13186 STATE(273), 1,
13187 sym_string_literal,
13188 ACTIONS(3), 2,
13189 sym_line_comment,
13190 sym_block_comment,
13191 [12930] = 2,
13192 ACTIONS(3), 2,
13193 sym_line_comment,
13194 sym_block_comment,
13195 ACTIONS(853), 2,
13196 ts_builtin_sym_end,
13197 anon_sym_SEMI,
13198 [12939] = 3,
13199 ACTIONS(743), 1,
13200 sym_identifier,
13201 STATE(241), 1,
13202 sym_generator,
13203 ACTIONS(3), 2,
13204 sym_line_comment,
13205 sym_block_comment,
13206 [12950] = 2,
13207 ACTIONS(3), 2,
13208 sym_line_comment,
13209 sym_block_comment,
13210 ACTIONS(855), 2,
13211 ts_builtin_sym_end,
13212 anon_sym_SEMI,
13213 [12959] = 3,
13214 ACTIONS(695), 1,
13215 anon_sym_LPAREN,
13216 STATE(181), 1,
13217 sym__parameters,
13218 ACTIONS(3), 2,
13219 sym_line_comment,
13220 sym_block_comment,
13221 [12970] = 2,
13222 ACTIONS(3), 2,
13223 sym_line_comment,
13224 sym_block_comment,
13225 ACTIONS(857), 2,
13226 ts_builtin_sym_end,
13227 anon_sym_SEMI,
13228 [12979] = 2,
13229 ACTIONS(3), 2,
13230 sym_line_comment,
13231 sym_block_comment,
13232 ACTIONS(835), 2,
13233 anon_sym_RBRACE,
13234 sym_identifier,
13235 [12988] = 2,
13236 ACTIONS(3), 2,
13237 sym_line_comment,
13238 sym_block_comment,
13239 ACTIONS(859), 2,
13240 ts_builtin_sym_end,
13241 anon_sym_SEMI,
13242 [12997] = 3,
13243 ACTIONS(861), 1,
13244 ts_builtin_sym_end,
13245 ACTIONS(863), 1,
13246 anon_sym_SEMI,
13247 ACTIONS(3), 2,
13248 sym_line_comment,
13249 sym_block_comment,
13250 [13008] = 3,
13251 ACTIONS(812), 1,
13252 anon_sym_RBRACE,
13253 ACTIONS(847), 1,
13254 anon_sym_COMMA,
13255 ACTIONS(3), 2,
13256 sym_line_comment,
13257 sym_block_comment,
13258 [13019] = 3,
13259 ACTIONS(865), 1,
13260 anon_sym_COMMA,
13261 ACTIONS(867), 1,
13262 anon_sym_RPAREN,
13263 ACTIONS(3), 2,
13264 sym_line_comment,
13265 sym_block_comment,
13266 [13030] = 3,
13267 ACTIONS(134), 1,
13268 ts_builtin_sym_end,
13269 ACTIONS(863), 1,
13270 anon_sym_SEMI,
13271 ACTIONS(3), 2,
13272 sym_line_comment,
13273 sym_block_comment,
13274 [13041] = 2,
13275 ACTIONS(3), 2,
13276 sym_line_comment,
13277 sym_block_comment,
13278 ACTIONS(869), 2,
13279 ts_builtin_sym_end,
13280 anon_sym_SEMI,
13281 [13050] = 3,
13282 ACTIONS(743), 1,
13283 sym_identifier,
13284 STATE(216), 1,
13285 sym_generator,
13286 ACTIONS(3), 2,
13287 sym_line_comment,
13288 sym_block_comment,
13289 [13061] = 2,
13290 ACTIONS(3), 2,
13291 sym_line_comment,
13292 sym_block_comment,
13293 ACTIONS(733), 2,
13294 anon_sym_SEMI,
13295 anon_sym_COMMA,
13296 [13070] = 2,
13297 ACTIONS(3), 2,
13298 sym_line_comment,
13299 sym_block_comment,
13300 ACTIONS(871), 2,
13301 ts_builtin_sym_end,
13302 anon_sym_SEMI,
13303 [13079] = 3,
13304 ACTIONS(847), 1,
13305 anon_sym_COMMA,
13306 ACTIONS(873), 1,
13307 anon_sym_RBRACE,
13308 ACTIONS(3), 2,
13309 sym_line_comment,
13310 sym_block_comment,
13311 [13090] = 2,
13312 ACTIONS(3), 2,
13313 sym_line_comment,
13314 sym_block_comment,
13315 ACTIONS(875), 2,
13316 ts_builtin_sym_end,
13317 anon_sym_SEMI,
13318 [13099] = 2,
13319 ACTIONS(3), 2,
13320 sym_line_comment,
13321 sym_block_comment,
13322 ACTIONS(877), 2,
13323 ts_builtin_sym_end,
13324 anon_sym_SEMI,
13325 [13108] = 2,
13326 ACTIONS(3), 2,
13327 sym_line_comment,
13328 sym_block_comment,
13329 ACTIONS(780), 2,
13330 anon_sym_COMMA,
13331 anon_sym_RBRACK,
13332 [13117] = 3,
13333 ACTIONS(695), 1,
13334 anon_sym_LPAREN,
13335 STATE(183), 1,
13336 sym__parameters,
13337 ACTIONS(3), 2,
13338 sym_line_comment,
13339 sym_block_comment,
13340 [13128] = 3,
13341 ACTIONS(839), 1,
13342 anon_sym_RBRACE,
13343 ACTIONS(847), 1,
13344 anon_sym_COMMA,
13345 ACTIONS(3), 2,
13346 sym_line_comment,
13347 sym_block_comment,
13348 [13139] = 3,
13349 ACTIONS(743), 1,
13350 sym_identifier,
13351 STATE(203), 1,
13352 sym_generator,
13353 ACTIONS(3), 2,
13354 sym_line_comment,
13355 sym_block_comment,
13356 [13150] = 2,
13357 ACTIONS(3), 2,
13358 sym_line_comment,
13359 sym_block_comment,
13360 ACTIONS(879), 2,
13361 ts_builtin_sym_end,
13362 anon_sym_SEMI,
13363 [13159] = 3,
13364 ACTIONS(865), 1,
13365 anon_sym_COMMA,
13366 ACTIONS(881), 1,
13367 anon_sym_RPAREN,
13368 ACTIONS(3), 2,
13369 sym_line_comment,
13370 sym_block_comment,
13371 [13170] = 2,
13372 ACTIONS(883), 1,
13373 sym_identifier,
13374 ACTIONS(3), 2,
13375 sym_line_comment,
13376 sym_block_comment,
13377 [13178] = 2,
13378 ACTIONS(885), 1,
13379 ts_builtin_sym_end,
13380 ACTIONS(3), 2,
13381 sym_line_comment,
13382 sym_block_comment,
13383 [13186] = 2,
13384 ACTIONS(887), 1,
13385 sym_identifier,
13386 ACTIONS(3), 2,
13387 sym_line_comment,
13388 sym_block_comment,
13389 [13194] = 2,
13390 ACTIONS(889), 1,
13391 anon_sym_LPAREN,
13392 ACTIONS(3), 2,
13393 sym_line_comment,
13394 sym_block_comment,
13395 [13202] = 2,
13396 ACTIONS(847), 1,
13397 anon_sym_COMMA,
13398 ACTIONS(3), 2,
13399 sym_line_comment,
13400 sym_block_comment,
13401 [13210] = 2,
13402 ACTIONS(891), 1,
13403 anon_sym_of,
13404 ACTIONS(3), 2,
13405 sym_line_comment,
13406 sym_block_comment,
13407 [13218] = 2,
13408 ACTIONS(893), 1,
13409 anon_sym_LPAREN,
13410 ACTIONS(3), 2,
13411 sym_line_comment,
13412 sym_block_comment,
13413 [13226] = 2,
13414 ACTIONS(895), 1,
13415 anon_sym_of,
13416 ACTIONS(3), 2,
13417 sym_line_comment,
13418 sym_block_comment,
13419 [13234] = 2,
13420 ACTIONS(897), 1,
13421 anon_sym_COLON,
13422 ACTIONS(3), 2,
13423 sym_line_comment,
13424 sym_block_comment,
13425 [13242] = 2,
13426 ACTIONS(899), 1,
13427 anon_sym_in,
13428 ACTIONS(3), 2,
13429 sym_line_comment,
13430 sym_block_comment,
13431 [13250] = 2,
13432 ACTIONS(901), 1,
13433 anon_sym_in,
13434 ACTIONS(3), 2,
13435 sym_line_comment,
13436 sym_block_comment,
13437 [13258] = 2,
13438 ACTIONS(903), 1,
13439 sym_identifier,
13440 ACTIONS(3), 2,
13441 sym_line_comment,
13442 sym_block_comment,
13443 [13266] = 2,
13444 ACTIONS(863), 1,
13445 anon_sym_SEMI,
13446 ACTIONS(3), 2,
13447 sym_line_comment,
13448 sym_block_comment,
13449 [13274] = 2,
13450 ACTIONS(905), 1,
13451 anon_sym_COLON,
13452 ACTIONS(3), 2,
13453 sym_line_comment,
13454 sym_block_comment,
13455 [13282] = 2,
13456 ACTIONS(907), 1,
13457 anon_sym_of,
13458 ACTIONS(3), 2,
13459 sym_line_comment,
13460 sym_block_comment,
13461 [13290] = 2,
13462 ACTIONS(909), 1,
13463 anon_sym_LBRACE,
13464 ACTIONS(3), 2,
13465 sym_line_comment,
13466 sym_block_comment,
13467 [13298] = 2,
13468 ACTIONS(911), 1,
13469 anon_sym_of,
13470 ACTIONS(3), 2,
13471 sym_line_comment,
13472 sym_block_comment,
13473 [13306] = 2,
13474 ACTIONS(913), 1,
13475 anon_sym_of,
13476 ACTIONS(3), 2,
13477 sym_line_comment,
13478 sym_block_comment,
13479 [13314] = 2,
13480 ACTIONS(763), 1,
13481 anon_sym_DQUOTE,
13482 ACTIONS(3), 2,
13483 sym_line_comment,
13484 sym_block_comment,
13485 [13322] = 2,
13486 ACTIONS(915), 1,
13487 anon_sym_of,
13488 ACTIONS(3), 2,
13489 sym_line_comment,
13490 sym_block_comment,
13491 [13330] = 2,
13492 ACTIONS(917), 1,
13493 anon_sym_LBRACK,
13494 ACTIONS(3), 2,
13495 sym_line_comment,
13496 sym_block_comment,
13497 [13338] = 2,
13498 ACTIONS(919), 1,
13499 sym_identifier,
13500 ACTIONS(3), 2,
13501 sym_line_comment,
13502 sym_block_comment,
13503 [13346] = 2,
13504 ACTIONS(865), 1,
13505 anon_sym_COMMA,
13506 ACTIONS(3), 2,
13507 sym_line_comment,
13508 sym_block_comment,
13509 [13354] = 2,
13510 ACTIONS(921), 1,
13511 sym_identifier,
13512 ACTIONS(3), 2,
13513 sym_line_comment,
13514 sym_block_comment,
13515 [13362] = 2,
13516 ACTIONS(923), 1,
13517 anon_sym_in,
13518 ACTIONS(3), 2,
13519 sym_line_comment,
13520 sym_block_comment,
13521 [13370] = 2,
13522 ACTIONS(925), 1,
13523 anon_sym_LBRACE,
13524 ACTIONS(3), 2,
13525 sym_line_comment,
13526 sym_block_comment,
13527 [13378] = 2,
13528 ACTIONS(927), 1,
13529 sym_identifier,
13530 ACTIONS(3), 2,
13531 sym_line_comment,
13532 sym_block_comment,
13533 [13386] = 2,
13534 ACTIONS(929), 1,
13535 anon_sym_LBRACE,
13536 ACTIONS(3), 2,
13537 sym_line_comment,
13538 sym_block_comment,
13539 [13394] = 2,
13540 ACTIONS(931), 1,
13541 anon_sym_of,
13542 ACTIONS(3), 2,
13543 sym_line_comment,
13544 sym_block_comment,
13545 [13402] = 2,
13546 ACTIONS(933), 1,
13547 sym_identifier,
13548 ACTIONS(3), 2,
13549 sym_line_comment,
13550 sym_block_comment,
13551 [13410] = 2,
13552 ACTIONS(935), 1,
13553 sym_identifier,
13554 ACTIONS(3), 2,
13555 sym_line_comment,
13556 sym_block_comment,
13557 [13418] = 2,
13558 ACTIONS(937), 1,
13559 anon_sym_in,
13560 ACTIONS(3), 2,
13561 sym_line_comment,
13562 sym_block_comment,
13563 [13426] = 2,
13564 ACTIONS(939), 1,
13565 anon_sym_LPAREN,
13566 ACTIONS(3), 2,
13567 sym_line_comment,
13568 sym_block_comment,
13569};
13570
13571static uint32_t ts_small_parse_table_map[] = {
13572 [SMALL_STATE(4)] = 0,
13573 [SMALL_STATE(5)] = 108,
13574 [SMALL_STATE(6)] = 216,
13575 [SMALL_STATE(7)] = 324,
13576 [SMALL_STATE(8)] = 425,
13577 [SMALL_STATE(9)] = 526,
13578 [SMALL_STATE(10)] = 627,
13579 [SMALL_STATE(11)] = 722,
13580 [SMALL_STATE(12)] = 817,
13581 [SMALL_STATE(13)] = 912,
13582 [SMALL_STATE(14)] = 1007,
13583 [SMALL_STATE(15)] = 1063,
13584 [SMALL_STATE(16)] = 1118,
13585 [SMALL_STATE(17)] = 1171,
13586 [SMALL_STATE(18)] = 1224,
13587 [SMALL_STATE(19)] = 1277,
13588 [SMALL_STATE(20)] = 1330,
13589 [SMALL_STATE(21)] = 1383,
13590 [SMALL_STATE(22)] = 1474,
13591 [SMALL_STATE(23)] = 1527,
13592 [SMALL_STATE(24)] = 1604,
13593 [SMALL_STATE(25)] = 1691,
13594 [SMALL_STATE(26)] = 1744,
13595 [SMALL_STATE(27)] = 1827,
13596 [SMALL_STATE(28)] = 1880,
13597 [SMALL_STATE(29)] = 1961,
13598 [SMALL_STATE(30)] = 2050,
13599 [SMALL_STATE(31)] = 2103,
13600 [SMALL_STATE(32)] = 2178,
13601 [SMALL_STATE(33)] = 2231,
13602 [SMALL_STATE(34)] = 2284,
13603 [SMALL_STATE(35)] = 2373,
13604 [SMALL_STATE(36)] = 2426,
13605 [SMALL_STATE(37)] = 2499,
13606 [SMALL_STATE(38)] = 2552,
13607 [SMALL_STATE(39)] = 2623,
13608 [SMALL_STATE(40)] = 2676,
13609 [SMALL_STATE(41)] = 2729,
13610 [SMALL_STATE(42)] = 2782,
13611 [SMALL_STATE(43)] = 2835,
13612 [SMALL_STATE(44)] = 2888,
13613 [SMALL_STATE(45)] = 2941,
13614 [SMALL_STATE(46)] = 3008,
13615 [SMALL_STATE(47)] = 3061,
13616 [SMALL_STATE(48)] = 3152,
13617 [SMALL_STATE(49)] = 3221,
13618 [SMALL_STATE(50)] = 3274,
13619 [SMALL_STATE(51)] = 3327,
13620 [SMALL_STATE(52)] = 3390,
13621 [SMALL_STATE(53)] = 3443,
13622 [SMALL_STATE(54)] = 3502,
13623 [SMALL_STATE(55)] = 3559,
13624 [SMALL_STATE(56)] = 3612,
13625 [SMALL_STATE(57)] = 3665,
13626 [SMALL_STATE(58)] = 3718,
13627 [SMALL_STATE(59)] = 3775,
13628 [SMALL_STATE(60)] = 3828,
13629 [SMALL_STATE(61)] = 3881,
13630 [SMALL_STATE(62)] = 3934,
13631 [SMALL_STATE(63)] = 3987,
13632 [SMALL_STATE(64)] = 4076,
13633 [SMALL_STATE(65)] = 4129,
13634 [SMALL_STATE(66)] = 4217,
13635 [SMALL_STATE(67)] = 4305,
13636 [SMALL_STATE(68)] = 4386,
13637 [SMALL_STATE(69)] = 4464,
13638 [SMALL_STATE(70)] = 4542,
13639 [SMALL_STATE(71)] = 4617,
13640 [SMALL_STATE(72)] = 4692,
13641 [SMALL_STATE(73)] = 4767,
13642 [SMALL_STATE(74)] = 4842,
13643 [SMALL_STATE(75)] = 4915,
13644 [SMALL_STATE(76)] = 4996,
13645 [SMALL_STATE(77)] = 5074,
13646 [SMALL_STATE(78)] = 5154,
13647 [SMALL_STATE(79)] = 5232,
13648 [SMALL_STATE(80)] = 5316,
13649 [SMALL_STATE(81)] = 5396,
13650 [SMALL_STATE(82)] = 5440,
13651 [SMALL_STATE(83)] = 5518,
13652 [SMALL_STATE(84)] = 5598,
13653 [SMALL_STATE(85)] = 5672,
13654 [SMALL_STATE(86)] = 5750,
13655 [SMALL_STATE(87)] = 5830,
13656 [SMALL_STATE(88)] = 5910,
13657 [SMALL_STATE(89)] = 5990,
13658 [SMALL_STATE(90)] = 6070,
13659 [SMALL_STATE(91)] = 6148,
13660 [SMALL_STATE(92)] = 6228,
13661 [SMALL_STATE(93)] = 6309,
13662 [SMALL_STATE(94)] = 6380,
13663 [SMALL_STATE(95)] = 6451,
13664 [SMALL_STATE(96)] = 6522,
13665 [SMALL_STATE(97)] = 6593,
13666 [SMALL_STATE(98)] = 6672,
13667 [SMALL_STATE(99)] = 6753,
13668 [SMALL_STATE(100)] = 6834,
13669 [SMALL_STATE(101)] = 6905,
13670 [SMALL_STATE(102)] = 6952,
13671 [SMALL_STATE(103)] = 7028,
13672 [SMALL_STATE(104)] = 7106,
13673 [SMALL_STATE(105)] = 7184,
13674 [SMALL_STATE(106)] = 7260,
13675 [SMALL_STATE(107)] = 7336,
13676 [SMALL_STATE(108)] = 7414,
13677 [SMALL_STATE(109)] = 7490,
13678 [SMALL_STATE(110)] = 7566,
13679 [SMALL_STATE(111)] = 7642,
13680 [SMALL_STATE(112)] = 7718,
13681 [SMALL_STATE(113)] = 7794,
13682 [SMALL_STATE(114)] = 7870,
13683 [SMALL_STATE(115)] = 7948,
13684 [SMALL_STATE(116)] = 7994,
13685 [SMALL_STATE(117)] = 8070,
13686 [SMALL_STATE(118)] = 8135,
13687 [SMALL_STATE(119)] = 8200,
13688 [SMALL_STATE(120)] = 8265,
13689 [SMALL_STATE(121)] = 8330,
13690 [SMALL_STATE(122)] = 8395,
13691 [SMALL_STATE(123)] = 8460,
13692 [SMALL_STATE(124)] = 8525,
13693 [SMALL_STATE(125)] = 8600,
13694 [SMALL_STATE(126)] = 8665,
13695 [SMALL_STATE(127)] = 8730,
13696 [SMALL_STATE(128)] = 8795,
13697 [SMALL_STATE(129)] = 8860,
13698 [SMALL_STATE(130)] = 8925,
13699 [SMALL_STATE(131)] = 8990,
13700 [SMALL_STATE(132)] = 9065,
13701 [SMALL_STATE(133)] = 9140,
13702 [SMALL_STATE(134)] = 9205,
13703 [SMALL_STATE(135)] = 9270,
13704 [SMALL_STATE(136)] = 9335,
13705 [SMALL_STATE(137)] = 9400,
13706 [SMALL_STATE(138)] = 9465,
13707 [SMALL_STATE(139)] = 9530,
13708 [SMALL_STATE(140)] = 9595,
13709 [SMALL_STATE(141)] = 9660,
13710 [SMALL_STATE(142)] = 9725,
13711 [SMALL_STATE(143)] = 9790,
13712 [SMALL_STATE(144)] = 9855,
13713 [SMALL_STATE(145)] = 9920,
13714 [SMALL_STATE(146)] = 9985,
13715 [SMALL_STATE(147)] = 10050,
13716 [SMALL_STATE(148)] = 10115,
13717 [SMALL_STATE(149)] = 10180,
13718 [SMALL_STATE(150)] = 10245,
13719 [SMALL_STATE(151)] = 10310,
13720 [SMALL_STATE(152)] = 10375,
13721 [SMALL_STATE(153)] = 10440,
13722 [SMALL_STATE(154)] = 10515,
13723 [SMALL_STATE(155)] = 10590,
13724 [SMALL_STATE(156)] = 10665,
13725 [SMALL_STATE(157)] = 10730,
13726 [SMALL_STATE(158)] = 10805,
13727 [SMALL_STATE(159)] = 10870,
13728 [SMALL_STATE(160)] = 10935,
13729 [SMALL_STATE(161)] = 11010,
13730 [SMALL_STATE(162)] = 11075,
13731 [SMALL_STATE(163)] = 11140,
13732 [SMALL_STATE(164)] = 11205,
13733 [SMALL_STATE(165)] = 11270,
13734 [SMALL_STATE(166)] = 11335,
13735 [SMALL_STATE(167)] = 11400,
13736 [SMALL_STATE(168)] = 11465,
13737 [SMALL_STATE(169)] = 11540,
13738 [SMALL_STATE(170)] = 11615,
13739 [SMALL_STATE(171)] = 11680,
13740 [SMALL_STATE(172)] = 11745,
13741 [SMALL_STATE(173)] = 11781,
13742 [SMALL_STATE(174)] = 11816,
13743 [SMALL_STATE(175)] = 11851,
13744 [SMALL_STATE(176)] = 11878,
13745 [SMALL_STATE(177)] = 11896,
13746 [SMALL_STATE(178)] = 11916,
13747 [SMALL_STATE(179)] = 11942,
13748 [SMALL_STATE(180)] = 11962,
13749 [SMALL_STATE(181)] = 11983,
13750 [SMALL_STATE(182)] = 12001,
13751 [SMALL_STATE(183)] = 12019,
13752 [SMALL_STATE(184)] = 12037,
13753 [SMALL_STATE(185)] = 12053,
13754 [SMALL_STATE(186)] = 12071,
13755 [SMALL_STATE(187)] = 12089,
13756 [SMALL_STATE(188)] = 12107,
13757 [SMALL_STATE(189)] = 12125,
13758 [SMALL_STATE(190)] = 12143,
13759 [SMALL_STATE(191)] = 12161,
13760 [SMALL_STATE(192)] = 12179,
13761 [SMALL_STATE(193)] = 12190,
13762 [SMALL_STATE(194)] = 12201,
13763 [SMALL_STATE(195)] = 12212,
13764 [SMALL_STATE(196)] = 12223,
13765 [SMALL_STATE(197)] = 12234,
13766 [SMALL_STATE(198)] = 12245,
13767 [SMALL_STATE(199)] = 12256,
13768 [SMALL_STATE(200)] = 12267,
13769 [SMALL_STATE(201)] = 12282,
13770 [SMALL_STATE(202)] = 12299,
13771 [SMALL_STATE(203)] = 12310,
13772 [SMALL_STATE(204)] = 12321,
13773 [SMALL_STATE(205)] = 12332,
13774 [SMALL_STATE(206)] = 12347,
13775 [SMALL_STATE(207)] = 12358,
13776 [SMALL_STATE(208)] = 12369,
13777 [SMALL_STATE(209)] = 12386,
13778 [SMALL_STATE(210)] = 12397,
13779 [SMALL_STATE(211)] = 12408,
13780 [SMALL_STATE(212)] = 12420,
13781 [SMALL_STATE(213)] = 12430,
13782 [SMALL_STATE(214)] = 12444,
13783 [SMALL_STATE(215)] = 12458,
13784 [SMALL_STATE(216)] = 12472,
13785 [SMALL_STATE(217)] = 12486,
13786 [SMALL_STATE(218)] = 12500,
13787 [SMALL_STATE(219)] = 12512,
13788 [SMALL_STATE(220)] = 12526,
13789 [SMALL_STATE(221)] = 12540,
13790 [SMALL_STATE(222)] = 12554,
13791 [SMALL_STATE(223)] = 12568,
13792 [SMALL_STATE(224)] = 12582,
13793 [SMALL_STATE(225)] = 12596,
13794 [SMALL_STATE(226)] = 12606,
13795 [SMALL_STATE(227)] = 12620,
13796 [SMALL_STATE(228)] = 12634,
13797 [SMALL_STATE(229)] = 12648,
13798 [SMALL_STATE(230)] = 12658,
13799 [SMALL_STATE(231)] = 12672,
13800 [SMALL_STATE(232)] = 12686,
13801 [SMALL_STATE(233)] = 12700,
13802 [SMALL_STATE(234)] = 12712,
13803 [SMALL_STATE(235)] = 12726,
13804 [SMALL_STATE(236)] = 12740,
13805 [SMALL_STATE(237)] = 12754,
13806 [SMALL_STATE(238)] = 12768,
13807 [SMALL_STATE(239)] = 12778,
13808 [SMALL_STATE(240)] = 12790,
13809 [SMALL_STATE(241)] = 12804,
13810 [SMALL_STATE(242)] = 12818,
13811 [SMALL_STATE(243)] = 12832,
13812 [SMALL_STATE(244)] = 12846,
13813 [SMALL_STATE(245)] = 12860,
13814 [SMALL_STATE(246)] = 12874,
13815 [SMALL_STATE(247)] = 12888,
13816 [SMALL_STATE(248)] = 12899,
13817 [SMALL_STATE(249)] = 12908,
13818 [SMALL_STATE(250)] = 12919,
13819 [SMALL_STATE(251)] = 12930,
13820 [SMALL_STATE(252)] = 12939,
13821 [SMALL_STATE(253)] = 12950,
13822 [SMALL_STATE(254)] = 12959,
13823 [SMALL_STATE(255)] = 12970,
13824 [SMALL_STATE(256)] = 12979,
13825 [SMALL_STATE(257)] = 12988,
13826 [SMALL_STATE(258)] = 12997,
13827 [SMALL_STATE(259)] = 13008,
13828 [SMALL_STATE(260)] = 13019,
13829 [SMALL_STATE(261)] = 13030,
13830 [SMALL_STATE(262)] = 13041,
13831 [SMALL_STATE(263)] = 13050,
13832 [SMALL_STATE(264)] = 13061,
13833 [SMALL_STATE(265)] = 13070,
13834 [SMALL_STATE(266)] = 13079,
13835 [SMALL_STATE(267)] = 13090,
13836 [SMALL_STATE(268)] = 13099,
13837 [SMALL_STATE(269)] = 13108,
13838 [SMALL_STATE(270)] = 13117,
13839 [SMALL_STATE(271)] = 13128,
13840 [SMALL_STATE(272)] = 13139,
13841 [SMALL_STATE(273)] = 13150,
13842 [SMALL_STATE(274)] = 13159,
13843 [SMALL_STATE(275)] = 13170,
13844 [SMALL_STATE(276)] = 13178,
13845 [SMALL_STATE(277)] = 13186,
13846 [SMALL_STATE(278)] = 13194,
13847 [SMALL_STATE(279)] = 13202,
13848 [SMALL_STATE(280)] = 13210,
13849 [SMALL_STATE(281)] = 13218,
13850 [SMALL_STATE(282)] = 13226,
13851 [SMALL_STATE(283)] = 13234,
13852 [SMALL_STATE(284)] = 13242,
13853 [SMALL_STATE(285)] = 13250,
13854 [SMALL_STATE(286)] = 13258,
13855 [SMALL_STATE(287)] = 13266,
13856 [SMALL_STATE(288)] = 13274,
13857 [SMALL_STATE(289)] = 13282,
13858 [SMALL_STATE(290)] = 13290,
13859 [SMALL_STATE(291)] = 13298,
13860 [SMALL_STATE(292)] = 13306,
13861 [SMALL_STATE(293)] = 13314,
13862 [SMALL_STATE(294)] = 13322,
13863 [SMALL_STATE(295)] = 13330,
13864 [SMALL_STATE(296)] = 13338,
13865 [SMALL_STATE(297)] = 13346,
13866 [SMALL_STATE(298)] = 13354,
13867 [SMALL_STATE(299)] = 13362,
13868 [SMALL_STATE(300)] = 13370,
13869 [SMALL_STATE(301)] = 13378,
13870 [SMALL_STATE(302)] = 13386,
13871 [SMALL_STATE(303)] = 13394,
13872 [SMALL_STATE(304)] = 13402,
13873 [SMALL_STATE(305)] = 13410,
13874 [SMALL_STATE(306)] = 13418,
13875 [SMALL_STATE(307)] = 13426,
13876};
13877
13878static TSParseActionEntry ts_parse_actions[] = {
13879 [0] = {.entry = {.count = 0, .reusable = false}},
13880 [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(),
13881 [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(),
13882 [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0),
13883 [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(115),
13884 [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(286),
13885 [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(166),
13886 [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(305),
13887 [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95),
13888 [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(11),
13889 [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(218),
13890 [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(250),
13891 [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(123),
13892 [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(301),
13893 [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152),
13894 [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93),
13895 [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(125),
13896 [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171),
13897 [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(300),
13898 [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(171),
13899 [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178),
13900 [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(295),
13901 [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67),
13902 [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(69),
13903 [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(294),
13904 [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(199),
13905 [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32),
13906 [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(27),
13907 [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32),
13908 [57] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2),
13909 [59] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(115),
13910 [62] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(286),
13911 [65] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(166),
13912 [68] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(305),
13913 [71] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(95),
13914 [74] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(11),
13915 [77] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(218),
13916 [80] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(250),
13917 [83] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(123),
13918 [86] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(301),
13919 [89] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(152),
13920 [92] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(93),
13921 [95] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(125),
13922 [98] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(171),
13923 [101] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(300),
13924 [104] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(171),
13925 [107] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(178),
13926 [110] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(295),
13927 [113] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(67),
13928 [116] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(69),
13929 [119] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(294),
13930 [122] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(199),
13931 [125] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(32),
13932 [128] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(27),
13933 [131] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(32),
13934 [134] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1),
13935 [136] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(14),
13936 [139] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(166),
13937 [142] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(95),
13938 [145] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_let_expression_repeat1, 2),
13939 [147] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(152),
13940 [150] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(93),
13941 [153] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(125),
13942 [156] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(171),
13943 [159] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(300),
13944 [162] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(171),
13945 [165] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(178),
13946 [168] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(295),
13947 [171] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(67),
13948 [174] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(69),
13949 [177] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(294),
13950 [180] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(199),
13951 [183] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(32),
13952 [186] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(27),
13953 [189] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_let_expression_repeat1, 2), SHIFT_REPEAT(32),
13954 [192] = {.entry = {.count = 1, .reusable = false}}, SHIFT(14),
13955 [194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306),
13956 [196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284),
13957 [198] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(14),
13958 [201] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(95),
13959 [204] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(152),
13960 [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2),
13961 [209] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(93),
13962 [212] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(125),
13963 [215] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(171),
13964 [218] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(300),
13965 [221] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(171),
13966 [224] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(178),
13967 [227] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(295),
13968 [230] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(67),
13969 [233] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(69),
13970 [236] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(294),
13971 [239] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(199),
13972 [242] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(32),
13973 [245] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(27),
13974 [248] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(32),
13975 [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195),
13976 [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209),
13977 [255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1),
13978 [257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression, 1),
13979 [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84),
13980 [261] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_infix_operator, 3, .production_id = 15),
13981 [263] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_infix_operator, 3, .production_id = 15),
13982 [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143),
13983 [267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 2),
13984 [269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 2),
13985 [271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_indexed_access, 5, .production_id = 30),
13986 [273] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_indexed_access, 5, .production_id = 30),
13987 [275] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 3, .production_id = 14),
13988 [277] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 3, .production_id = 14),
13989 [279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_comprehension, 6),
13990 [281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_comprehension, 6),
13991 [283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator_call, 9, .production_id = 45),
13992 [285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generator_call, 9, .production_id = 45),
13993 [287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292),
13994 [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator_call, 7, .production_id = 41),
13995 [291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generator_call, 7, .production_id = 41),
13996 [293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119),
13997 [295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139),
13998 [297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126),
13999 [299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138),
14000 [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137),
14001 [303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136),
14002 [305] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135),
14003 [307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135),
14004 [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134),
14005 [311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(134),
14006 [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133),
14007 [315] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145),
14008 [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141),
14009 [319] = {.entry = {.count = 1, .reusable = false}}, SHIFT(141),
14010 [321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140),
14011 [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145),
14012 [325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_interpolation, 4),
14013 [327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_interpolation, 4),
14014 [329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_literal, 1),
14015 [331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_literal, 1),
14016 [333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 7, .production_id = 40),
14017 [335] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 7, .production_id = 40),
14018 [337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142),
14019 [339] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 4, .production_id = 21),
14020 [341] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 4, .production_id = 21),
14021 [343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_then_else, 7),
14022 [345] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_then_else, 7),
14023 [347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 5, .production_id = 27),
14024 [349] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 5, .production_id = 27),
14025 [351] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_comprehension, 7),
14026 [353] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_comprehension, 7),
14027 [355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_literal, 3),
14028 [357] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_literal, 3),
14029 [359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_literal, 2),
14030 [361] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_literal, 2),
14031 [363] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_then_else, 5),
14032 [365] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_then_else, 5),
14033 [367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_then_else, 8),
14034 [369] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_then_else, 8),
14035 [371] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_comprehension, 7),
14036 [373] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_comprehension, 7),
14037 [375] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_literal, 4),
14038 [377] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_literal, 4),
14039 [379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_indexed_access, 4, .production_id = 22),
14040 [381] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_indexed_access, 4, .production_id = 22),
14041 [383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_literal, 4),
14042 [385] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_literal, 4),
14043 [387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282),
14044 [389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_interpolation, 3),
14045 [391] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_interpolation, 3),
14046 [393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_literal, 2),
14047 [395] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_literal, 2),
14048 [397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 3, .production_id = 10),
14049 [399] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 3, .production_id = 10),
14050 [401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_prefix_operator, 2, .production_id = 3),
14051 [403] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_prefix_operator, 2, .production_id = 3),
14052 [405] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesised_expression, 3),
14053 [407] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesised_expression, 3),
14054 [409] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_comprehension, 5),
14055 [411] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_comprehension, 5),
14056 [413] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator_call, 8, .production_id = 44),
14057 [415] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generator_call, 8, .production_id = 44),
14058 [417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_comprehension, 5),
14059 [419] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_comprehension, 5),
14060 [421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_literal, 3),
14061 [423] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_literal, 3),
14062 [425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 5, .production_id = 29),
14063 [427] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 5, .production_id = 29),
14064 [429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_comprehension, 6),
14065 [431] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_comprehension, 6),
14066 [433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 6, .production_id = 35),
14067 [435] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 6, .production_id = 35),
14068 [437] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_then_else, 6),
14069 [439] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_then_else, 6),
14070 [441] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68),
14071 [443] = {.entry = {.count = 1, .reusable = false}}, SHIFT(289),
14072 [445] = {.entry = {.count = 1, .reusable = false}}, SHIFT(280),
14073 [447] = {.entry = {.count = 1, .reusable = false}}, SHIFT(291),
14074 [449] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_call_repeat1, 2), SHIFT_REPEAT(14),
14075 [452] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_call_repeat1, 2), SHIFT_REPEAT(95),
14076 [455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_call_repeat1, 2),
14077 [457] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_call_repeat1, 2), SHIFT_REPEAT(152),
14078 [460] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_call_repeat1, 2), SHIFT_REPEAT(93),
14079 [463] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_call_repeat1, 2), SHIFT_REPEAT(125),
14080 [466] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_call_repeat1, 2), SHIFT_REPEAT(171),
14081 [469] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_call_repeat1, 2), SHIFT_REPEAT(300),
14082 [472] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_call_repeat1, 2), SHIFT_REPEAT(171),
14083 [475] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_call_repeat1, 2), SHIFT_REPEAT(178),
14084 [478] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_call_repeat1, 2), SHIFT_REPEAT(32),
14085 [481] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_call_repeat1, 2), SHIFT_REPEAT(27),
14086 [484] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_call_repeat1, 2), SHIFT_REPEAT(32),
14087 [487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator, 3),
14088 [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151),
14089 [491] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator, 5),
14090 [493] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_base, 3, .production_id = 11),
14091 [495] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_base, 3, .production_id = 11),
14092 [497] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constraint, 2),
14093 [499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144),
14094 [501] = {.entry = {.count = 1, .reusable = false}}, SHIFT(128),
14095 [503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40),
14096 [505] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_base, 1),
14097 [507] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_base, 1),
14098 [509] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2),
14099 [511] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__annotations, 2),
14100 [513] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_base, 2, .production_id = 5),
14101 [515] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_base, 2, .production_id = 5),
14102 [517] = {.entry = {.count = 1, .reusable = false}}, SHIFT(101),
14103 [519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18),
14104 [521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration, 6, .production_id = 36),
14105 [523] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_base, 4, .production_id = 20),
14106 [525] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_base, 4, .production_id = 20),
14107 [527] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_base, 4, .production_id = 19),
14108 [529] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_base, 4, .production_id = 19),
14109 [531] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_base, 2, .production_id = 4),
14110 [533] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_base, 2, .production_id = 4),
14111 [535] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_base, 5, .production_id = 28),
14112 [537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_base, 5, .production_id = 28),
14113 [539] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration, 5, .production_id = 31),
14114 [541] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_base, 3, .production_id = 12),
14115 [543] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_base, 3, .production_id = 12),
14116 [545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175),
14117 [547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37),
14118 [549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252),
14119 [551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50),
14120 [553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39),
14121 [555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30),
14122 [557] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_then_else_repeat1, 4),
14123 [559] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_then_else_repeat1, 4),
14124 [561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263),
14125 [563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60),
14126 [565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161),
14127 [567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44),
14128 [569] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__expression, 1), SHIFT(167),
14129 [572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_annotation, 4, .production_id = 17),
14130 [574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46),
14131 [576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43),
14132 [578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_indexed_access_repeat1, 2),
14133 [580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_predicate, 5, .production_id = 26),
14134 [582] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_predicate, 6, .production_id = 34),
14135 [584] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_annotation, 5, .production_id = 24),
14136 [586] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_goal, 3, .production_id = 8),
14137 [588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_output, 2),
14138 [590] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 13),
14139 [592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 7, .production_id = 39),
14140 [594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61),
14141 [596] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__expression, 1), SHIFT(118),
14142 [599] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 8, .production_id = 43),
14143 [601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180),
14144 [603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165),
14145 [605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33),
14146 [607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120),
14147 [609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55),
14148 [611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20),
14149 [613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22),
14150 [615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41),
14151 [617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57),
14152 [619] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_let_expression_repeat1, 2),
14153 [621] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__parameters_repeat1, 2),
14154 [623] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__parameters_repeat1, 4),
14155 [625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 4),
14156 [627] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_call_repeat1, 2),
14157 [629] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__annotations, 2), SHIFT_REPEAT(129),
14158 [632] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration, 3, .production_id = 16),
14159 [634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158),
14160 [636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129),
14161 [638] = {.entry = {.count = 1, .reusable = false}}, SHIFT(16),
14162 [640] = {.entry = {.count = 1, .reusable = false}}, SHIFT(117),
14163 [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186),
14164 [644] = {.entry = {.count = 1, .reusable = false}}, SHIFT(186),
14165 [646] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(),
14166 [648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration, 4, .production_id = 23),
14167 [650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121),
14168 [652] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_interpolation_repeat1, 3),
14169 [654] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 5, .production_id = 25),
14170 [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127),
14171 [658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumeration, 3, .production_id = 7),
14172 [660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290),
14173 [662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_predicate, 3, .production_id = 9),
14174 [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159),
14175 [666] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_array_comprehension_repeat1, 2), SHIFT_REPEAT(272),
14176 [669] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_array_comprehension_repeat1, 2),
14177 [671] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2),
14178 [673] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2), SHIFT_REPEAT(185),
14179 [676] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2), SHIFT_REPEAT(185),
14180 [679] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_content, 1),
14181 [681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185),
14182 [683] = {.entry = {.count = 1, .reusable = false}}, SHIFT(185),
14183 [685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205),
14184 [687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumeration, 2, .production_id = 1),
14185 [689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302),
14186 [691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_annotation, 2, .production_id = 1),
14187 [693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130),
14188 [695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9),
14189 [697] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_item, 6, .production_id = 33),
14190 [699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164),
14191 [701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_predicate, 4, .production_id = 18),
14192 [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147),
14193 [705] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 3),
14194 [707] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 4),
14195 [709] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 6),
14196 [711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_type, 1),
14197 [713] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2), SHIFT_REPEAT(200),
14198 [716] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_then_else_repeat1, 2), SHIFT_REPEAT(144),
14199 [719] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_then_else_repeat1, 2),
14200 [721] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_then_else_repeat1, 2),
14201 [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200),
14202 [725] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 5),
14203 [727] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148),
14204 [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64),
14205 [731] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 2),
14206 [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172),
14207 [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285),
14208 [737] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type, 6),
14209 [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304),
14210 [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173),
14211 [743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299),
14212 [745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19),
14213 [747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240),
14214 [749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214),
14215 [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59),
14216 [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232),
14217 [755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307),
14218 [757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265),
14219 [759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162),
14220 [761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17),
14221 [763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52),
14222 [765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117),
14223 [767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49),
14224 [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231),
14225 [771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281),
14226 [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21),
14227 [775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303),
14228 [777] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_array_type_repeat1, 2), SHIFT_REPEAT(65),
14229 [780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_array_type_repeat1, 2),
14230 [782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type, 8),
14231 [784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246),
14232 [786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62),
14233 [788] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_interpolation_repeat1, 2),
14234 [790] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_interpolation_repeat1, 2), SHIFT_REPEAT(117),
14235 [793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259),
14236 [795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257),
14237 [797] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type, 1),
14238 [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25),
14239 [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278),
14240 [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271),
14241 [805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253),
14242 [807] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_indexed_access_repeat1, 2), SHIFT_REPEAT(161),
14243 [810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249),
14244 [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251),
14245 [814] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type, 7),
14246 [816] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_annotation, 3, .production_id = 6),
14247 [818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150),
14248 [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35),
14249 [822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234),
14250 [824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56),
14251 [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47),
14252 [828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298),
14253 [830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196),
14254 [832] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enumeration_repeat1, 2), SHIFT_REPEAT(279),
14255 [835] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enumeration_repeat1, 2),
14256 [837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266),
14257 [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267),
14258 [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42),
14259 [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275),
14260 [845] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_interpolation_repeat1, 4),
14261 [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256),
14262 [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268),
14263 [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187),
14264 [853] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumeration, 6, .production_id = 32),
14265 [855] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumeration, 6, .production_id = 7),
14266 [857] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumeration, 8, .production_id = 42),
14267 [859] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumeration, 5, .production_id = 1),
14268 [861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 2),
14269 [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81),
14270 [865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174),
14271 [867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207),
14272 [869] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__item, 1),
14273 [871] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_goal, 2, .production_id = 2),
14274 [873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255),
14275 [875] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumeration, 7, .production_id = 38),
14276 [877] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enumeration, 7, .production_id = 37),
14277 [879] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include, 2),
14278 [881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198),
14279 [883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297),
14280 [885] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(),
14281 [887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254),
14282 [889] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170),
14283 [891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70),
14284 [893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156),
14285 [895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13),
14286 [897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277),
14287 [899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163),
14288 [901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149),
14289 [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189),
14290 [905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296),
14291 [907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71),
14292 [909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235),
14293 [911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72),
14294 [913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10),
14295 [915] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73),
14296 [917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66),
14297 [919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177),
14298 [921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274),
14299 [923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167),
14300 [925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6),
14301 [927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270),
14302 [929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228),
14303 [931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12),
14304 [933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260),
14305 [935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188),
14306 [937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146),
14307 [939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122),
14308};
14309
14310#ifdef __cplusplus
14311extern "C" {
14312#endif
14313#ifdef _WIN32
14314#define extern __declspec(dllexport)
14315#endif
14316
14317extern const TSLanguage *tree_sitter_minizinc(void) {
14318 static TSLanguage language = {
14319 .version = LANGUAGE_VERSION,
14320 .symbol_count = SYMBOL_COUNT,
14321 .alias_count = ALIAS_COUNT,
14322 .token_count = TOKEN_COUNT,
14323 .external_token_count = EXTERNAL_TOKEN_COUNT,
14324 .state_count = STATE_COUNT,
14325 .large_state_count = LARGE_STATE_COUNT,
14326 .production_id_count = PRODUCTION_ID_COUNT,
14327 .field_count = FIELD_COUNT,
14328 .max_alias_sequence_length = MAX_ALIAS_SEQUENCE_LENGTH,
14329 .parse_table = (const uint16_t *)ts_parse_table,
14330 .small_parse_table = (const uint16_t *)ts_small_parse_table,
14331 .small_parse_table_map = (const uint32_t *)ts_small_parse_table_map,
14332 .parse_actions = ts_parse_actions,
14333 .symbol_names = ts_symbol_names,
14334 .field_names = ts_field_names,
14335 .field_map_slices = (const TSFieldMapSlice *)ts_field_map_slices,
14336 .field_map_entries = (const TSFieldMapEntry *)ts_field_map_entries,
14337 .symbol_metadata = ts_symbol_metadata,
14338 .public_symbol_map = ts_symbol_map,
14339 .alias_map = ts_non_terminal_alias_map,
14340 .alias_sequences = (const TSSymbol *)ts_alias_sequences,
14341 .lex_modes = ts_lex_modes,
14342 .lex_fn = ts_lex,
14343 .keyword_lex_fn = ts_lex_keywords,
14344 .keyword_capture_token = sym_identifier,
14345 };
14346 return &language;
14347}
14348#ifdef __cplusplus
14349}
14350#endif